Fix memory leak between ConnectionAutomaton and FollyKeepaliveTimer (#281)
Fix memory leak between ConnectionAutomaton and FollyKeepaliveTimer (#281)

There's a shared_ptr cycle made between ConnectionAutomaton and
FollyKeepaliveTimer on FollyKeepaliveTimer::start().  Currently, we don't break
it on FollyKeepaliveTimer::stop() so we leak both of them.

Fix it by explicitly setting FollyKeepaliveTimer::connection_ to null in
::stop(), and fix ::sendKeepalive() to call ::stop() after sending an error
frame to ::connection_.
vjn/reactivesocket-cpp,vjn/reactivesocket-cpp,vjn/reactivesocket-cpp,ReactiveSocket/reactivesocket-cpp,alexmalyshev/rsocket-cpp,alexmalyshev/rsocket-cpp,phoad/rsocket-cpp,alexmalyshev/rsocket-cpp,phoad/rsocket-cpp,vjn/rsocket-cpp,rsocket/rsocket-cpp,rsocket/rsocket-cpp,ReactiveSocket/reactivesocket-cpp,alexmalyshev/rsocket-cpp,phoad/rsocket-cpp,phoad/rsocket-cpp,vjn/rsocket-cpp,rsocket/rsocket-cpp,ReactiveSocket/reactivesocket-cpp,rsocket/rsocket-cpp,vjn/rsocket-cpp,phoad/rsocket-cpp