NanoSat MO Framework: Achieving On-board Software Portability