`set_simulator_device` only quotes the device type if necessary.

Both the Xcode 4 and 5 Simulators reject e.g. "'iPhone'" . It went unnoticed
that `set_simulator_device` wasn't working for "iPhone" and "iPad" because
`subliminal_test` forces the project to build using particular device families
and "iPhone" and "iPad" are the default device types for their respective families.

Investigation reveals that it's not whitespace but rather punctuation in plist values
that requires quoting so that's updated too--now `set_simulator_device` will
be able to set the Xcode 5 Simulator to "iPad Retina".
Test order is now fully randomized. (closes #78)

Tests are now sorted and then randomized prior to being run.
If one or more tests fail, the seed used to randomize the order will be logged.
That seed may then be used to rerun the tests in the same order.

If the seed was predetermined (by the user), a warning will be logged
and `subliminal-test` will fail the run (under the assumption that tests should
generally be run randomized, to prevent test pollution, and that a seed will
be predetermined only for debugging purposes.)

Test relative order will be maintained regardless of focus.
Use a Chi-Squared test to check uniformity in random test order

Causes SLTestControllerTests to use a more robust testing method
to determine whether or not the randomization of test orders
chooses orders in a sufficiently uniform way.
Merge pull request #80 from inkling/jeff/78_randomize_test_order

Test order is now fully randomized. (closes #78)
Merge pull request #79 from inkling/jeff/escape_simulator_device_type

`set_simulator_device` only quotes the device type if necessary.
Merge remote-tracking branch 'upstream/master'