Updated the jshintrc to resolve reserved words warnings, e.g. Promise.
Major refactor. Method names and signatures have changes.