tests now run in playjson and js subprojects. playjson working, but js broken due to illegal use of jvm reflection. factored out common unit tests code that is shared across the 2 environments.