OpenRDK: A modular framework for robotic software development