Added apache::mod::rewrite
Add a2mod instances method on Debian

The a2mod Debian provider (just called `a2mod.rb` instead of
`debian.rb`) did not have an instances method which did not allow
resource purging or `puppet resource a2mod` to work. This commit adds
this by using the `apache2ctl -M` command which lists loaded modules.
Add prefetch & flush; update redhat

The redhat provider can also take advantage of the instances and
prefetch methods used by debian, as can any other OS. The relevant
resource state detection was pulled into a `Puppet::Provider::A2mod`
provider parent.
Committing for holding

Todo:
- doc headers for relevant manifests
- Update readme
- Commit separately
Update specs to pass
Allow SSL certs path to be changed per platform
Update php to php53 on redhat
Update params to allow RedHat 5/6 packages/libs/sslcerts
Add IP vhost support

This commit adds support for IP-based vhost and name-based vhosts
listening on specific IPs.

The use of IP vhosts in combination to non-IP vhosts can lead to
conflicting Listen directives, so the `add_listen` parameter has been
added.

The `port` attribute is no longer required, as IP-only vhosts require no
port (though at least on Listen must still be declared).
Update specs and parameters for the new vhost stuff
Add lots of example tests
Add parameter for purging vdir

The new parameter $purge_vdir in apache class gives the possibility to disable the purging of the virtual hosts directory.
Enable puppet 3.0.1 in travis.yml

A fix for rodjek/rspec-puppet#58 has been merged which
should allow puppet 3.0.1 to run the spec tests
Build all branches on travis

We should build all branches for travis, otherwise users won't be able to test
their own feature branches.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge branch 'update_travis'

* update_travis:
  Build all branches on travis
  Enable puppet 3.0.1 in travis.yml
Standardize travis and gemfile

This commit standardizes the travis and gemfile to be similar
to the files in stdlib.
Merge pull request #144 from blkperl/update_travis

Standardize travis and gemfile
Change default_ssl_vhost default from true to false
Change error_pages* parameters to error_documents*
Adding $logroot to apache::params