7.x web and unit test cases

This pull does some wonderful fun things! Hurrah!

- Islandora test cases are now split out between the IslandoraWebTestCase and IslandoraUnitTestCase. The IslandoraUnitTestCase has no database access and does not enable modules, but otherwise functions the same. Note that it is largely untested beyond basic utility and assertion functionality.
- Several chunks of functionality have been broken out and are now been placed inside tests/includes/utilities.inc. This includes a class to safely store and manipulate the Drupal filter, a class to handle utility test results in a consistent fashion, and a utilities class that includes test utility methods that work irrespective of the context they are called from, and use the utility test result class to pass through consistent results. Some of these methods have been reformatted to function properly outside of a Drupal context. Regression tests have been run to ensure no loss of test functionality.
- The datastream validator results class has been generalized into the utility results class mentioned above.
- An abstract IslandoraTestUtilityClass has been created to support creating future test utility classes that are compatible with utility test results. To add a result to a test from within a test utility class, use $this->addResult().
- PHP overloading is being used to call test utility methods, so that no functionality is lost from attempting to call test utilities from $this context. These methods are not being registered in the TestCases, so it is worth noting that IDEs using method/property checking and autocompletion will not find test utility methods when calling $this->testUtilityMethod from inside a TestCase. This is, however, a valid method of calling test utility methods; check the IslandoraTestUtilities class to see what methods are valid in both (and future) test cases. 
- General cleanup (i.e. I shoved the includes in a folder, no biggie).