A modular operating system for the Phonebloks platform