jshint task improvements and code refactoring. closes #165