Add open/close methods to recorder

In some cases, people will want to manage the recorder context manually
rather than using a context manager. Enable this pattern via `open` and
`close` instance methods.