Anyways, what you are asking is something I considered adding too. The only real problem is with how the menus work, they are basically a hude collection of linked lists (a trait has a list of expressions and a list of expressions that refer to that trait). This is used to update any derived trait when the game/engine changes something. Which means unless something changes the menu (code) does absolutely nothing. When introducing script functions into the mix you'll get the problem that the menu won't know when the result of said function will change. The only solution I could think of was to constantly check for a change (and thus constantly calling the function).
But this will get a bit offtopic for the OBSE thread so if you'd like to know more or have suggestions on new menu features drop by the MenuQue thread.
-kyoma