adding generic reader and tests

we now have a configurable reader to support
streaming keepalive requests and standard.

we now also have tests