Fixing #232 by adding thisArg param to Observable.flatMap

Hi there, here's a quick fix allowing a ```thisArg``` param for ```flatMap```. In order not to break backwards compatibility I've added the ```thisArg``` param as third and last param to ```flatMap``` even though it can result in "ugly looking" calls to the method (e.g., ```obs.flatMap(obj.callback, undefined, obj)```) if you're not using the 2nd param.