Spec refactoring
Spec refactoring

* Any calls to explicit subjects have been replaced with calls to named subjects
* Removes a ton of new lines to improve readability

t6d/smart_properties,christhomson/smart_properties