Support for nginx-passenger, small fixes and enhancements

Sorry for the scope creep in this request--if it's too large, I'll try to break it down into smaller requests.

The primary purpose of this pull request is to resolve https://github.com/example42/puppet-puppet/issues/64
It adds a 'passenger_type' parameter which can be 'apache' or 'nginx' (or blank) and configures puppet/passenger accordingly.

It also:
- fixes puppet-ca-generate to use $puppet::server instead of $::fqdn
- Allows optionally overriding 'reports' value in puppet.conf and moves calculation from template into init.pp
- Allows specifying a custom rack/config.ru template