Knockout.es5, Added Array methods + minor refactor

The knockout ES5 plugin augments the Array prototype to add remove, removeAll, destroy and destroyAll methods.  I've added definitions for these.  I also extracted the defineProperty method's options parameter type into its own interface.