OperatorMerge does not request enough #1941

Looks to me that an inner request count is needed and tracked so that more can be requested from the inner observable if required. Review from anyone familiar with ```OperatorMerge``` very welcome as I'm not that familiar with its current incarnation and it's a tricky place!

Just one unit test included but I imagine more would be nice.