Abstract out the crypto packages used

  Seperating out none docker specific calls to the golang stdlib
  crypto/..., then we provide ourselves with an ability to have drop-in
  replacements of backends.
  I've included the openssl drop-in replacement. To use it, install
  openssl devel packages and  include the build flag:
  	cd ./docker
	go build -tags "net openssl" .
  and the binary will be linked to libssl and libcrypto for these
  functions.
  Best to install the static development bits for openssl, as dockerinit
  links as well.