-core and -android subprojects to allow us to compile and run on desktop java
Use dynamic class loading for android/desktop java specific libraries