Fix logic error in calculating size on .read()
Fix typo on attribute check
Fix logic error where checking current location might never occur if callback is supplied
Add a boatload of unit tests for ShardFile class