docker development environment

hi, :)

this pull request adds support for using Docker to manage a consistent and portable development environment. i'm having problems running the cobudget api, so i figured i might as well make it easier for myself to work on cobudget by using Docker. maybe we can also re-use this work for our production deploys, if we want.

the main two files are a `Dockerfile`, which describes a docker image for the api service, and a `Makefile`, which provides various tasks for managing the api and postgres services using docker. i also added `config/database.yml` as the configuration is not obvious, and modified the `Rakefile` and forked playhouse to support ERB in the database config.

- `make [build]`: builds the api image
- `make db-create`: runs `bundle exec db:create` in the api image
- `make db-migrate`: runs `bundle exec db:migrate` in the api image
- `make run`: runs `bundle exec rackup` in the api image
- `make start`: runs `bundle exec rackup` as a daemon in the api image
- `make stop`: stops and removes the api image
- `make irb`: runs `irb` in the api image
- `make db-migrate-test`: runs `ENV=test bundle exec rake db:migrate` in the api image
- `make test-spec`: runs `bundle exec rake spec` in the api image
- `make test-features`: runs `bundle exec rake features` in the api image
- `make postgres-pull`: pulls the postgres image from the docker registry
- `make postgres-run`: runs a postgres database daemon in the postgres image
- `make postgres-stop`: stops the postgres image
- `make postgres-start`: starts the postgres image, if it has been run and stopped
- `make postgres-rm`: removes the postgres image
- `make postgres-logs`: prints the logs of the postgres image

considering that most cobudget developers probably have their own way of managing their local environment, is this something we want? if we want it, does it make sense to add this to the README as the "official" way to develop?

cheers!