Add LifecycleSubscription
This PR uses most of the changes made in #2254, fixes some of the issues in that PR, and adds a test.
@fujitatomoya could you please take another look when you get a chance? 🧇
I have gone ahead and created #2805 to address https://github.com/ros2/rclcpp/pull/2715#discussion_r1909639354.
I think it would be better if this PR could be merged first and that issue could be tackled in the future for both the LifecyclePublisher and LifecycleSubscription.
@fujitatomoya @alsora , is this issue a red herring cause these pr's dont have any updates for a year now ? is this feature already implemented internally?