Add type contracts utilities and use them in Observer and Observable
classes for paramter verification.
Use contract utilities in Observer and Observable classes
Add contracts for Array, Date and RegExp
Fix contract call in Observer class
Add type contracts utilities and use them in Observer and Observable
classes for paramter verification.
Use contract utilities in Observer and Observable classes
Add contracts for Array, Date and RegExp
Merge branch 'master' into debjit

Conflicts:
	uibase/commons/observable.js
	uibase/commons/observer.js
Make the example work with contracts
Add accumulate function to Observable and show it off
Return the dispose function from map and accumulate
Merge commit '5cd5bc9'

Conflicts:
	uibase/commons/observable.js
Revert "Merge commit '5cd5bc9'"

This reverts commit efb6e29083415973ccb69734dbb65fde9d061c33, reversing
changes made to 7d0bb16c4980b80fa5424ff622b335844bf5150a.
Merge changes from debjit