coconutrandom this is really awesome! You wanted something that was not possible with Arc (http://www.arclanguage.org/item?id=10092), and instead of complaining or anything, you actually make it possible!
Hats off, really, hats off to you! You are what I'd called a Real Man :-P
I'll take a look at the source as soon as possible to see if I can help for the refactoring, but I'm too busy this week-end.