supporting any object as id, as long as it responds to :id