Reworked bootstrap script to accept incoming environment variables

This gives the ability to completely bypass the initial input dialog, which helps when scripting setup of puppet-based machines.

With this new change, the setup of a machine could look like this:

    export BOOTSTRAP_RSA_KEY="-----BEGIN RSA PRIVATE KEY-----
    .
    .
    .
    .  your private key contents
    .
    .
    .
    -----END RSA PRIVATE KEY-----"
    export BOOTSTRAP_GIT_URL="git@github.com:some-rest-of-url-to-git-repo.git"
    export BOOTSTRAP_HOST_NAME="yourwonderfulhostname"

    bash <(curl -k https://raw.github.com/mpemer/puppet.linux.bootstrap/master/bootstrap.sh)

In other words you would first export three global variables, then run the script.

The BOOTSTRAP_RSA_KEY and BOOTSTRAP_GIT_URL variables, if present, will cause the script
to enter non-interactive mode and run without the initial dialog.

If only one of BOOTSTRAP_GIT_URL and BOOTSTRAP_HOST_NAME is provided, the script will fail.

BOOTSTRAP_HOST_NAME is optional. If omitted, the hostname will remain unchanged.