Issues #816, #1105 - Throttle extender updates

* Added "debounce" and "throttle" algorithms that mirror jquery-throttle plugin. (see http://benalman.com/projects/jquery-throttle-debounce-plugin/)
* Default to "debounce" algorithm, keeping backwards compatibility with previous behavior.
* Optimization to only wrap target observable in another dependent observable if it is writable.