refactor Stricter options on JsHint

Enable more strict option on JsHint and update the package dependencies.

Close #244 close #579