Refactored Java starter kit

Don't use this yet; it breaks absolutely everything.