The trait needing to be in scope trips up many newcomers to rust. We should just implement those functions on the context directly.