move boilerplate application code into core package