A Portable Object Oriented Software Framework for Real Time Control of Robots and Multi-Robot Systems