restructure into libraries and apps for more clarity