added place for external puppet modules.
Added vagrant and external modules to .gitignore.

this commit add .vagrant and tools/puppet/external-modules
to gitignore.
added r10k to manage external modules

r10k is the puppet deployment tool developed by adrienthebo.

"r10k provides a general purpose toolset for deploying Puppet
environments and modules.

It implements the Puppetfile format and provides a native
implementation of Puppet dynamic environments.  "

https://github.com/adrienthebo/r10k

Create the rake task r10k:install to install the modules on
tools/puppet/external-modules.
ex: rake r10k:install
reorganization of custom puppet modules.

This commit moves the custom installer puppet modules
to the diretory tools/puppet/modules.

Also this commit add a symlink to keep compatibility,
if someone use it hard coded.
Added gemfile.lock to .gitignore

removing gemfile.lock
r10k need puppet gem to deploy from forge

This commit add the puppet gem to Gemfile
For deploying modules from forge r10k
needs puppet gem.

I did not know that before, because I usually
use r10k only with git repositories.
added module to configure firewall

This commits add the puppetlabs/firewall module and
add the custom_firewall module.

The custom_firewall module is used by vagrant
to configure the firewall on the middleware host.
mcomaster puppet config mcollective server and client

This commit make the mcomaster puppet module able to configure
mcollective server and client for the mcomaster application.

mcomaster puppet module should change only things that are
related to mcomaster working. This class rely on mcollective
being installed from puppetlabs/mcollective module.

Example on how to use it will be on tools/vagrant/deploy/site.pp
Add initial support for vagrant.

run:
rake r10k:install
cd tools/vagrant
vagrant up
vagrant ssh mcomaster
mcomaster$mco ping
mcomaster$sudo -s
mcomaster$RAILS_ENV=production scl enable ruby193 "/usr/share/mcomaster/bin/rails server -p 8080 "

Now open in your webbrowser http://localhost:8080, and can login using the username vagrant@example.com
password vagrant
You will have all three machines configured,
middleware (activemq and redis), mcserver (one
server to test mcollective) and mcomaster (the mcollective
client with mcomaster.

TODO:
Make sure the mcomaster puppet module provides a initscript
and configures the mcomaster service.
Make mcomaster puppet module install mco from source.
Merge branch 'master' into vagrant

Conflicts:
	Gemfile.lock
get actionpolicies from database and a /#/admin/policies/ view which so far
has checkboxes for enabling boolean policy config and a read-only table
of policies. work in progress.
Merge branch 'master' of github.com:ajf8/mcomaster
put is_admin in to_json options[:methods] inside model, so it's sent back in /users/sign_in response in the same way it's embedded into HTML. so reload isn't needed for admin tab to appear.
fix handling of default policies
fix initscript to correctly support thin.

The mcomaster status was not working if using thin.
This was happening because if called without pid argument,
thin was creating the pid file on /tmp/pids/thin.pid,
and the initscript expected it on MCOMASTER_HOME/tmp/pids/thin.*.pid.

Also the ports defined on /etc/sysconfig/mcomaster was not being respected
if using thin. It was missing the --port parameter for thin to listen on
MCOMASTER_PORT.

This commit fix thin port support and the thin pid location.
mcomaster puppet module should configure initscript defaults

This commit extend the mcomaster puppet module to configure
the initscript parameters.

Also this fixes that the mcomaster_port was not working,
because it was commented on sysconfig/mcomaster template.

example usage:
class {'mcomaster':
  mcomaster_port         => 8080,
  mcomaster_env          => dev,
  mcomaster_use_thin     => 1,
  mcomaster_thin_use_ssl => 1
}
mcomaster puppet module should enable service.

The mcomaster should enable and ensure the service
mcomaster is running.

This commit makes this possible.
mcomaster service should require create_db exec.

The mcomaster service on puppet mcomaster module,
should require create_db exec.

Before starting the application we need to be sure
that the database was created.
fix on custom_firewall configs.

This commit fix custom_firewall, and add mcomaster
firewall config.
Working vagrant environment

To understand how to use it, see VAGRANT.md file.