Using data volume containers for caching gems

Keeping the dependencies outside of the app container allows us to update the
Gemfile without the need for re-building the container again; this speeds up
`bundle install` and `bundle update` calls.

By keeping them in a data volume container we are able to reuse them across
multiple projects, which allows us to save disk space.

This approach aims to solve the `bundle install` issue of the previous version.
Because it relies on data volume containers that have to be created outside of
Fig (so the `fig rm` doesn't remove them), a script file is provided to aid the
process of bootstrapping a project (project.sh). The README.md was updated to
provide with the needed instructions and the `fig.yml` file adapted accordingly.