Fix network / host byte order issue
Brand new xlat functions.

All xlat's are now run through the new routines.  The old
(i.e. horrific) routines are gone.  The result is more functionality,
simpler debugging, better errors, and ~400 lines fewer code.

The downside is that (for the next day or so), calling a module
xlat routine MAY mean that it gets expanded twice.

i.e. the old code would do %{mod: foo} and pass "foo" to module "mod".
The new code (for reasons of simplicity) xlat's "foo" before passing
it to module "mod".

Some modules (i.e. expr) call radius_xlat again.  This is now wrong.

The fix is to update the signature of the xlat functions so that
"fmt" is no longer a "const char*", as it is now a talloc'd string.
Once that's done, all of the modules will need a visual pass-through
to remove the extra recursive calls to xlat.

We've also deleted xlat registration for %{1} and %[request:..}
The regex and attribute parsing is now done by the xlat core.
In the future, it should be passed to a module-specific "parse"
or "validate" routine.  That routine would ensure that the RHS of
an xlat expansion is valid
Fix typo
doxygen updates