[WIP] Adding the custom constraint registration feature from issue #11