whole buncha stuff

- Renamed /src -> /lib
- Put /errors, event, mediator into /lib/eventable dir
- Setting up code coverage for non-travis builds
- Adding appropriate gems to gemfile