Minimal set of changes for Java 8.

- changed abstract F<n> classes to interfaces with default methods (not Java 7 compatible)
- between Java 8 build 113 and 132, Gradle has changed from working to no longer working with Java 8 and Scala (http://issues.gradle.org/browse/GRADLE-3023, no one assigned yet)
- after moving tests to own gradle module, had to remove the test module due to bug above (so has no ScalaCheck tests)