Messages API implementation

The implementation of https://github.com/atom/atom/issues/4228

To have the message views as a package, this requires us to export the `Message` class. 

TODO: 

* [ ] Fill out the issue body, including version information similar to bug-report
* [ ] Parse stack trace and figure out in which package an error happened
* [ ] Provide a timestamp
Will this one be private? Also, is "add" the appropriate word here? I know we use it everywhere so maybe so, but these things are transient so it makes me think another verb might make more sense, like "display" or "present".