Use correct function for a constant token list
Reformat code section to current LaTeX3 standard approach

Documentation also to be done, but after a full revision of the code part.
Remove \changes from code part

These are best tracked by the Git repo, and simply make the code part harder to read.
Reformat code to use current nesting approach

This is all just tidying up where the braces are, so that everything is as in the expl3 style guide.
Cosmetic cahnges to key definitions

Keep all of the lines organised!
\cs_new_eq:NN rather than \cs_set_eq:NN for saving footnote/endnote commands

As this happens only once, new is the correct approach.
Formatting update

More brace positionsing to sort out.
Mark expandable functions
Set up saved file writing status as real TeX conditional

This should always be equal to the raw \iffalse or \iftrue, as TeX's matching for conditionals depends on this,
Several functions which must be protected

A change to match expl3 convention.
Don't use nopar for functions with arguments

There are some that I've left, but those need a bit more thought as they are aux file commands, so 'document-like'.
Some minor tidying up