refactor + add jshint