source-map support

Use espower-source to be DRY and support source-map.

* [x] Update dependencies
* [x] Use espower-source
* [x] Update README
* [x] Update demo