Move Specification to Specification::Bare

This prepares for the introduction of a wrapper class on top
of a baseline container manager; the wrapper class will perform
automatic image pulling as necessary, and will wrap the foundational
container management component.

This lets us keep concerns reasonably separated and things reasonably
extensible.

The existing Specification functionality becomes the Bare functionality,
as it does container management and nothing more.
Make directory for specification tests
Image-pulling behavior for default use case

Tainers::Specification...

Bare:
* new #image reader to access the specification's requested image ref

ImagePuller:
* new class that wraps Bare instances (or anything) and delegates most
  calls to it
* but automatically pulls the requested image on #create and #ensure

This ImagePuller behavior is more consistent with the spirit of
this project than the Bare behavior, but this design lets you access the
bare behavior if you want it.

Tainers.specify now uses the ImagePuller instead of Bare.
Added #image delegator method for image puller

Unit tests missed this one; remedied.
Fix image creation call

Docker::Image.create needs to be given a hash of config options,
rather than just an image/tag name.  Simple enough.

This appears to make the image pull behavior operational.  Hooray.
Merge pull request #2 from ethanrowe/auto-pull

Resolves ethanrowe/ruby-tainers#1

Merge auto-pull into master.