Added a potential deadlock in read().

When read() was called with a `size` argument bigger than `max_size` it
would sleep forever inside the `cread` call. Fixed this by limiting the
`size` to the `max_size` instead.


Also added a proper __repr__ method.
Removed a race condition in manager

A race condition was present by refreshing the `self.source` twice on
each iteration through the loop. It now only does it once as is
expected.

Also updated some doc strings and added an explicit size argument to the
EOF Buffer.
Changed exception call to an error call for the EOF logger.
Fixed a bad if comparison in context.read.
Doubled the buffer size. And removed an extra argument to creation.
Merge pull request #13 from R-a-dio/bugfix/buffer_upgrade

Bugfix/buffer upgrade