Begin adding support for FreeBSD
Extract /etc/default/unicorn_$name from FreeBSD hosts

Only try to write /etc/default file if params::etc_default is true.
Add FreeBSD init script template

Included is a patch which fixes issues with _find_processes not
detecting “ruby19: unicorn” as the correct process entry. This issue is
currently referenced in FreeBSD PR conf/169047 from 2012 but has not
yet been closed. An updated patch has been provided to the bug-followup
address.
Allow initscript value to be determined by params
Merge pull request #6 from xaque208/freebsd_support

Freebsd support
Improve command_interpreter detection

Adds support for `#!/usr/bin/env ruby` style interpreters
Normalise indentation to tabs.

Done to match the included patch code which comes from upstream.
Rewrite rc.d-unicorn script to fix system and bundler.

This rewrite fixes a number of issues

* Fixes `$rc_pid` issues for bundler exec unicorn
  This requires setting `procname` to "unicorn" which unfortunately does
  emit a warning as `check_pidfile` is unable to read the interpreter
  from "unicorn" as its not a qualified path, we can't change it to a
  qualified path as unicorn rewrites its `$0` so the process won't
  match.

* Removes the `_find_processes` patch as the `procname` change makes it
  irrelevant.

* Fixes startup failures due to skeleton PATH when running bundle exec.
  The PATH is now enhanced with the `dirname` of the `$command` and the
  `$command_interpreter` (if they are different). This fixes bundle exec
  as when starting unicorn bundler will try to invoke its interpreter by
  name rather than by path. As `/usr/local/bin` is not in the PATH given
  by the `service` utility the startup would fail.

* Sets the BUNDLE_GEMFILE environment variable if a Gemfile is found.
  The Gemfile will be searched in the `${name}_chdir` and
  `required_dirs` listings.
Merge pull request #7 from geoffgarside/freebsd-initscript

FreeBSD initscript improvements