Add JSDoc comments

While familiarizing myself with the Ghost codebase I thought it'd be helpful to flesh out the documentation in the source code as I go.

This PR isn't yet complete, but wanted to open it to ensure this is the desired direction of the source code, and to track my progress as I go.

Hopefully this is helpful!