add startupscript and metadata params

Adds startupscript => parameter, allows for user to specify a custom
script in /files to deploy to the gce startup-script from local file.

Adds metadata => hash support, will create individual metadata keys for
the instance with the value.

Introduces puppet-enterprise.sh, which can use take values to setup
either a pe master or an agent, for master:

  startupscript        => 'puppet-enterprise.sh',
  metadata             => {
    'pe_role'          => 'master',
    'pe_version'       => '3.1.0',
    'pe_consoleadmin'  => 'admin@puppetlabs.com',
    'pe_consolepwd'    => 'puppetlabs',
    'pe_classes'       => 'pe_repo,pe_gce',
  },
  modules      => ['nanliu-staging','puppetlabs-gce_compute'],
  module_repos => {
    'pe_repo'  => 'git://github.com/mrzarquon/mrzarquon-pe_repo',
    'pe_gce'   => 'git://github.com/mrzarquon/mrzarquon-pe_gce',
  },

for agent (note, you have to include hostname of master, also assume master has pe_repo applied to it, which the above example does):

  startupscript        => 'puppet-enterprise.sh',
  metadata             => {
    'pe_role'          => 'agent',
    'pe_master'        => 'puppet.c.flowing-flame-390.internal',
  },
change puppet agent run to return 0 or 1, remove -t
Update docs for change in module_repos

Commit 9e8d9d6 swapped the behavior of the module_repos parameter
to expect localdir => repo instead of repo => localdir. This is
purely stylistic to conform with how resources traditionally handle
the relationship between local and remote data.
update puppet-enterprise.sh to install 3.1 agents

uses current install method for PE 3.1, downloads either redhat or
debian 7 64bit tarballs, unpacks, and passes an generic answers file.
Merge commit 'ec97758dfd4447544587c3576bf5adb46cf0b6cb' into gce_ga/pe_support
GCEv1 and adding master, start-service metadata vars
more updates for GCE v1
tweak README for using /dev/null for now, and fix for disk/image param
adding another test and more v1 changes
prefer user-specified boot disk if present
update for ssh keys, formatting
final tweaks for v1
Adding on_host_maintenance instructions
Hack around failure when metadata param absent

This commit adds a qualifier to the conditional around
resource['metadata'] to skip the block when the resource does not
contain the metadata parameter. Puppet passes an empty string in
that case.
Rewrite the README

This commit rewrites the README into the format used by most other
Puppet Labs Forge modules. It adds a little additional content but
is mostly a refactoring of the existing documentation.
Remove prep_master function from puppet-enterprise.sh
Merge pull request #23 from puppetlabs/gce_v1

Gce v1 & PE Provisioning