If I didn't cache them, I'd still be creating a bunch of unnecessary objects.  And the fact that they're lightweight is an implementation detail of `Context`, no?