Fix issues that GroupBy and Sample doesn't call 'unsubscribe' and also NPE when the key is null in GroupBy

Fix #1958
I haven't had a chance to try this code yet, but I want to make sure this doesn't break the backpressure functionality where this operator requests `Long.MAX_VALUE` up.