Load and render APIs

resolve issue #34: add load and render APIs

- add APIs to load Document from source
- add APIs to render source
- use load API in Invoker
- lots 'o tests

Note that this pull request is based on Jason's cli branch. I can rebase once that goes in.