eg Idea ripped off from https://github.com/ben-albrecht/eg. Other inspiration taken from: https://github.com/tardate/LittleCodingKata