Changes required to get rid of deprecation warnings with rspec 2.99/3.0

@jnicklas -  This is all the tests changed to use 'expect' syntax and changes made to get rid of all the deprecation warnings rspec 2.99.0.beta1 throws in advance of rspec 3 being released.  The downside to these changes is that the tests will no longer run with earlier rspecs than 2.99 due to the lack of the be_truthy/be_falsey matchers.  I'm not sure that its going to be possible to have tests that can ruin using either rspec 2.x or 3 without implementing our own be_truthy/be_falsey matchers if rspec doesnt have them.  Do you think this is worth continuing on currently?