Bedazzle

Undergoing a pretty major rework.

TODO