Updated berkshelf to 3.1.5, chefspec to 4.0.0 and foodcritic to 4.0

* Updated berkshelf from 2.0.18 to 3.1.5 in Gemfile
* added supermarket source to Berksfile
* some refactoring of the Berksfile
* removed Gemfile.lock since its not supposed to be in master branches
* also updated chefspec to 4 and foodcritic to 4 (like done some time ago for the other cookbooks)

Change-Id: I787912448337040ccf26a1126d848c76e7148caf
Implements: blueprint update-berkshelf
add a Rakefile to structure test runs

Having a Rakefile will allow us to change the actual test commands on
our side rather than relying on changes to the openstack-infra
repository. This should make it a lot faster to change things, but also
easier to test since the jenkins jobs are actually run in this
repository, not the openstack-infra one.

This commit defines the jobs we previously had defined in Jenkins and
uses 'high-level' naming consistently (i.e. lint, style vs. foodcritic,
rubocop).

There is also a :clean task to help with deleting the files generated by
the other jobs.

Also changed foodcritic to run on the source cookbook rather than the
one installed by berks, see
e.g. https://github.com/berkshelf/berkshelf/issues/931#issuecomment-29668369

Change-Id: Id085444027efd90049508abe6a309fed7dfffee8
blueprint: rakefile