Extract each exception and add a common base class

It's now possible to rescue Curly::Error and get all the compilation
errors.
Merge pull request #55 from zendesk/dasch/cleanup-errors

Extract each exception and add a common base class