n_open: rework so we operate directly from user memory
In addition adjust the logic so we build a correctly parsed last name component
in lastname so that it can be used by the caller to manipulate directories.
This gets rid of filename() which saves us copying and parsing the path twice
as well as getting rid of that code
It gets rid of most of the 30 byte name arrays (rename still has to have one)
It allows us to get rid of ugets()
Our PATH_MAX can now be arbitrarily set (for now still 512)
ugets/_ugets/__ugets all go away
pathbuf for LEVEL2 goes away, LEVEL0 and 1 and 2 now all look the same
The end result on Z80 at least is that we run faster amd we save a whopping 400
bytes.
24 files changed: