enable es6 promise compatibility
Merge branch 'next' into es6-promise
Merge branch 'next' into es6-promise
Merge branch 'next' into es6-promise
refactor promises
Merge branch 'next' into es6-promise

Conflicts:
	docs/mithril.deferred.md
drop facade
add note about polyfill.io
Merge remote-tracking branch 'origin/next' into es6-promise

Conflicts:
	mithril.js
deal with setTimeout properly
Merge branch 'next' into es6-promise
expose exception monitor
make signature doc consistent
update change log
fix errors