Implement bind (lightly tested)