Make CommandContext public, add some doc comments
Make CommandContext public, add some doc comments

Needs to be public so clients can replace metrics (and other)
implementations. Made the previously-public methods internal

hudl/Mjolnir,courtneyklatt/Mjolnir