Added many more functional tests.
Had to change the JDK level to JDK 6 because GroovyScriptEngine's caching fails of not detecting file changes with JDK 7