refactor into a cinch plugin, more organization