Refactored and squashed
Merge branch 'master' of https://github.com/ryanwaters/jarvis
squashed