Add Ruby and Sass
Merge pull request #205 from aaronjorbin/ruby

Add Ruby and Sass to meet new WordPress develop.svn requirements

Closes #204
Include note in readme about Virtualbox version on Mavericks
Modifications to language around the use of Virtualbox 4.3.2 with OS X MAvericks
Update contributors list
capital_B_dangit() - s/Virtualbox/VirtualBox/
Update the grunt module we install to match the updates core grunt scripts requirements.
Merge pull request #209 from westi/grunt-updates

Update the grunt module we install to match the updates core grunt scripts
Add !/bin/bash to first line of provisioning
Implement style guide recommendations for if/for/while statements

From the guide:

"Put ; do and ; then on the same line as the while, for or if.

Loops in shell are a bit different, but we follow the same principles as with braces when declaring functions. That is: ; then and ; do should be on the same line as the if/for/while. else should be on its own line and closing statements should be on their own line vertically aligned with the opening statement."

Thinking of `; then` or `; do` as an opening bracket–`{`–for the statement makes a lot of sense when trying to grasp this in the mind of a day to day PHP dev.
Implement $(command) instead of backticks

From the style guide:

"Nested backticks require escaping the inner ones with \. The $(command) format doesn't change when nested and is easier to read."

We have a couple places where commands are nested and this totally helps the confusion level there.
Implement [[...]] for testing if statements

From the style guide:

"[[ ... ]] reduces errors as no pathname expansion or word splitting takes place between [[ and ]] and [[ ... ]] allows for regular expression matching where [ ... ] does not."

Consistency makes sense more than anything here and we were already using [[...]] in more places than [...]. There were a few places where there were no brackets at all, those have been converted as well.
Implement proper test for non empty string

From the style guide:

"use tests for empty/non-empty strings or empty strings rather than filler characters"

In the one test for a non-empty string, use `-n` instead of `!= ""`
Correct a remaining backtick to $() issue
Trim whitespace
More explicit checks for empty and not empty
Bring all comments under an 80 character limit
Test for the string length of $package_version rather than it's value

This change threw off the loop and caused provisioning to think that these packages were installed.
Compare for an exact string match on MySQL detection

The script was having trouble detecting with some change related to the style guide. This does one better by taking the two checks we were doing and combining them into one.
Merge pull request #212 from 10up/195-shell-style-guide-2

Apply a shell style guide to our shell scripting