Toolkit to develop software with emergent functionality