Persistence support + numerous fixes and improvements

!!!NOTE!!! Do not merge this PR, WIP.

As to @lstrojny  request, https://github.com/pdezwart/php-amqp/issues/122#issuecomment-55711669.

Major changes and improvements list - https://github.com/pdezwart/php-amqp/issues/122#issuecomment-54773945

TODO:

- [ ] squash commits
- [ ] add phpt tests to cover added methods
- [ ] remove any debug output and development comments (mainly, TODOs)
- [ ] enable full travis matrix and notification (and change it to notify users only when build status changed)
- [ ] run coverity analyze on build
- [ ] discuss `exchange.bind` BC ($flag and $arguments arguments), NOTE: I stands to support BC as much as possible and probably will provide changes to bring $flag back.
- [ ] list changes in PR comment

What about returning 0, not null or even throwing an exception?