add jshint and fix checkstyle violations
restructure tests