Structure overhauling; added jscs, jshint, grunt.