Split JS/JVM builds

Split the build so that JS/JVM can be built independently, root project does both. Also fixed aggregation of projects so that "clean" actually cleans all targets. 

Compilation/testing times vary with memory:

All 1G/2G = 148s/70s

Jvm 1G/2G = 40s/39s

Js 1G/2G  = 60s/53s