changes necessary to work with docker

* This adds a "null" blockdevice plugin which basically stubs out the blockdevice concept.
* Change how we deal with provisioning config files.  in docker /etc/resolv.conf is a mount point so
  we cannot just move it out of the way.  We can copy it to make a backup then copy back over it to
  restore it.