Add support for bootstrapping Docker nodes, and other fixes.

* Rework role dependencies to not need deployer-client for the admin
  node and for docker nodes.  This gets rid of some duplicate code for
  creating the repositoriy metadata on nodes.
* Flesh out the docker_setup recipe.  It now knows how to create
  self-contained scripts that can launch a Docker container and bring it
  under OpenCrowbar management.
* Change the default admin network from a /24 to a /22.  This allows
  room for booting and testing a stupidly large number of nodes for
  scale testing.
* Fix the dns database, dhcp-database, and docker-setup roles to scale.
  Instead of looping over all the nodes to rebuild their sysdata
  everytime a node changes, have them be smarter about how they manage
  their sysdata.
* Make the model for network ranges and allocations scale a little
  better.
* Add tools/docker slaves to facilitate creating and running large
  numbers of docker slaves at once.

To use docker-slaves, wait until the admin node is up and then run it
with:

    tools/docker-slaves <number of slaves>

It will create the number of Docker nodes requiested using the Crowbar
CLI on the admin node, and then it will run them all under screen if
they were created successfully.  Detaching from the screen session will
kill all the nodes.  Docker slaves is currently hardcoded to only work
when the admin node is running in a container as well.