changed the sub-apps to expose an object instead of a function