Compartmentalize install files

This seems like a big one, but it's basically switching us from using "bash-through-python" for the installation to using bash directly. This only changes the server installation - I've left the client and database as is. I have tested every single dependency shell script for correctness. I have tested running a benchmark with 2-3 frameworks. 

The biggest benefits: 
* The exclude and test flags apply to the installation stage. No need to install everything if all you want is nodejs
* Readability: It's a lot easier to parse than the previous approach
* Maintainability: I've found/fixed a few bugs already
* Future-proofing: Individual frameworks can use `fw_depends` to get the language/tool/etc that is current for FrameworkBenchmarks, or they can just ignore `fw_depends` and use the specific version they need. Best of both worlds :-)
* True installation stage: A lot of our setup.py scripts do some last-minute installation, which is annoying when you've waited all night to install and just want to start running. With each folder having an install.sh, we can move the installation there and fix the setup.py#start() usage to be as it was intended. 

Basically this just declares a few bash functions in `toolset/setup/linux/bash_functions.sh` and then uses them everywhere. Each framework now has an install.sh file that declares it's dependencies (e.g. `fw_depends siena play1`) - if a dependency is unknown it's ignored. Each dependency has it's own bash script in the proper subfolder (e.g. `frameworks/play1.sh`) that is executed to install it. About 95% of these dependencies check if they have already been met before doing anything, so calling them repeatedly has no performance hit (e.g. `fw_depends nginx nginx nginx` just install once and then skip twice).

**Bugs Fixed**
* HHVM: Was forcing trusty install regardless of ubuntu version
* WT: was checking for installs/namak folder
* ruby: extra single quotes were breaking rvm source
* ruby: was trying to use rvm before sourcing ~/.profile

I've stuck to traditional sh code instead of bash code, so if we want to port this to a different OS it should be trivial (at least for this boilerplate part....not for the actual installations...)

FWIW, I'm not claiming this is a generally good solution to dependency installation, but I do think it's a step in the right direction