Restructure Test Suite

CHANGED: All tests now live in spec/lib rather than spec/cases.
CHANGED: The Graph API test cases have been moved from a shared example file into concern-specific files in spec/lib/api.

To do: move the UploadableIO shared examples into lib as well.