- updated gulpfile with better error message display
- switched to q promises
- added several test cases
- added function sorting to make validator more efficient (test requireds
  first)