allow non-objects to be passed as context