I think that your best start would be to look into the openni_launch package this will help you to get the raw data from the kinect. The next thing I would recommend is to look into the Point Cloud Library. They are very heavily tied to ROS and provide a very robust library for handling RGB-D data.
Finally PCL offers many tutorials that discuss the topics you want to look into check out the following:
- ICP
- Localization (map building)
- As for robot_pose_ekf I do not know what this is but there is a ROS page here that seems to cover the concept and the use of the ROS node pretty well so please check that out.
Hope this helps.
BadRobot