Topological order

The idea is to sort addins in a topological order. Each addin can define one of five things for _order_:
* `>X` - I must be immediately after the addin with id X

* `>>X` - I must be somewhere after the addin with id X (but not necessarily immediately) 

* `<X`- I must be immediately before the addin with id X

* `<<X` - I must be somewhere before the addin with id X (but not necessarily immediately) 

* `Number` - A numerical order which is used if none of the above is applicable


good, then if you make a small effort and get used to functional programming, you will not need to read redundant var declarations (in a scopeless language), index maintenance, curlybracket tab hell and many other wonderful things that you automatically get when you use imperative programming where functional is simpler and more concise...
in the same way that the forest is hidden by the trees, so is what you're trying to achieve hidden by code that can be more concise.