added jshint and linting travisci integration, fixed all ofenses I was sure I could fix without breaking things