Implement Surface.get_at, .set_at, .get_at_mapped.