Menu position

Same as previous attempt, just less conflictual. :stuck_out_tongue: 

Have a look, let me know if it may work, if it can be improved, etc.

The class itself allows to "add" items to a "list of something". There are various methods to add before/after/begin/end.
It should be useful in more places than just menus, usually anywhere we want to allow manipulation of a list of items (various buttons, errors, some custom profile fields, probably other things).