Set FOREMAN_PROCESS_NAME env var for spawned procs

This way, processes can identify themselves to metrics logging systems.
added support for directories with single quotes. fixes #315
fixes #315
third time is the charm. :)
modified to use shellescape instead of gsub
Change FOREMAN_PROCESS_NAME to just PS
Add unit test for PS env var
Fix typo in manual page.
Ruby 1.8 doesn't have the concept of string encodings. Compare to the string as is.
Use pipe factory method to handle 1.8 incompatible signature for IO.pipe.
Use POSIX::Spawn to make foreman ruby 1.8 compatible and have all specs passing.
Enable ruby 1.8.7 building on Travis. All specs should pass now on ruby 1.8.7.
The wrapped_command has spaces which triggers Ruby to fork a system shell (with /bin/sh -c). This causes orphaned processes on some systems (i.e. Linux). Fix this by splitting the command using String#shellsplit and using ruby's splat operator (*) to pass discrete arguments to spawn.
Merge pull request #359 from kjwierenga/feature/make-ruby-18-compatible

Fix specs that were broken on ruby 1.8. Use POSIX::Spawn.spawn to make foreman robust on ruby 1.8.7.
Merge pull request #355 from JoeyButler/fix_typo_in_man

Fix typo in manual page.
Merge pull request #340 from ldmosquera/set_env_var_with_process_name

Set FOREMAN_PROCESS_NAME env var for spawned procs
update docs
not sure how this snuck in, not in the exporter format
fix docs, thanks to @Invizory
kill the children, not self