title: Scan operator with a result selector
body: <p>In Rx.NET, <code>Aggregate</code> has an overload that accepts a <code>resultSelector</code>, but <code>Scan</code> does not. Is there a reason for this? And how would I go about creating a <code>Scan</code> operator that does accept a result selector, i.e., with signature: <code>IObservable&lt;TResult&gt; Scan&lt;TSource,TAccumulate,TResult&gt;(this IObservable&lt;TSource&gt; source, TAccumulate seed, Func&lt;TAccumulate,TSource,TAccumulate&gt; accumulator, Func&lt;TAccumulate,TResult&gt; resultSelector)</code>.</p>