Buffered Ports 

Re-issue of pull request https://github.com/planthaber/rock-webapp/pull/11 against master
Where we differ is on the definition of "lifetime".

> - reuse with different timeout
>      - this is a concurrent use of the port object
>      - both are expecting the buffered port to be available when they want to use it again until the timeout occurs, so we chose the higher one

Your definition of lifetime is nonsensical w.r.t. these requirements (we do agree on the requirements). When I call

   /bla/bla/bla/read?timeout=10min

at T=14:00, I (caller) expect the reader to timeout at 14:10. If then someone else calls

   /bla/bla/bla/read?timeout=2min

at T=14:09, the other caller expects the reader to timeout at 14:11. You make it timeout at 14:19 which is nonsensical both from the point of view of the first *and* the point of view of the second caller.

Hence my original point: the lifetime should be limited to the latest deadline (14:11 in the example above), not the longest timeout. In addition, it is a lot simpler code-wise.