Specifically, the code used here can probably be generalized as a Mixin. This would allow it to be utilized by anything in the repository (such as data hooks), providing a universal pattern for how "tunable" elements should be defined by the user.
This would primarily benefit the data hooks, which currently have to define tunable parameters manually on a case by case basis.