Building your communications OS