Myrial UDAs

This PR adds UDAs to Myrial.  JSON compilation is not implemented.  Also, there is no support for combine/merge.

Can you give me some context for this change? In particular, I imagine a (fairly near) future wherein we make a decomposable form of UDA.