[PSR-7] Add false as a return value for read()

Per @mtdowling, `StreamableInterface::read()` should allow returning `false`.
Merge pull request #342 from weierophinney/hotfix/psr7-read-return

[PSR-7] Allow returning false from StreamableInterface::read()
[PSR-7] Added `@throws` annotations

- Added `@throws` annotations for all setters or methods accepting arguments
  that must be validated by implementors. In each case,
  `InvalidArgumentException` is specified.
- Made `@params`/`@return`/`@throws` order consistent, and removed empty lines
  between any such annotations for further consistency.
- Moved `@link` annotations before `@params` in all cases.