Refactored related spec, updated readme

The spec for this change is pretty dank, but it's pretty much the
best that I could think to do. Suggestions/edits are most welcome.