This is issue is about allowing users to write congproc functions that behave special on certain terms. This is about exposing the congproc type declared in Opening to users. Ideally would be done after #1734 since that change would make congprocs cheaper to add and would change the type of congprocs anyway.