Refactor setup module starting

This enables much cleaner setup.py files and makes
debugging easier by logging each shell command from
setup.py before it is run.

- Pass setup_module it's decorator framework_test
- Use fw_test to run shell scripts
Initial code for setup.py helper class

Uses helper thread to automatically keep track of
subprocess.Popen output
rewrote app.psgi. Do not use Plack::Builder and Plack::Response, use $dbi->selectrow_arrayref for more performance
change to use Starlet and add some Starlet's options
fix a opt name
update README
format cpanfile and add --notest to cpanm
use nginx as reverse proxy
README + installer assumes tfb user is allowed to run sudo
Move installation to bash

Logically this code is quite similar to before, it's just
using the shell directly instead of going through python.

This defines a trivial dependency system with `fw_depends`.
Where possible, I have specified inherent dependencies (e.g.
siena depends on play1), but callers should declare their
dependencies in proper order to be safe.

Bugs Fixed:
- HHVM: Was forcing trusty name on all Ubuntu versions
- WT: Was checking for installs/namak
- Ruby: Removed single quotes preventing proper source
- Ruby: Was attempting to use rvm before sourcing ~/.profile
Adding install.sh files based on benchmark_config files

Also removes accidentally added ._dart.sh
Added zeromq as dependency of mongrel2
Added comments on how to use static cache when developing
do not use sudo. tune number of process
Declaring /bin/bash where appropriate
Error handling for installation
falcon: Disable access log in meinheld.
update netty and jackson to the latest versions
Fix hardcoded db host.
use the netty way of detecting if epoll is available