(get_highest_msgnum): Restructure to step through readdir itself
rather than go through getfiles, since we don't want full path names
like that returns, but only the base filenames readdir returns. Also
fix it to return the highest number in the folder, not that number
plus one, making its name accurate.
(store_message): Adapt to get_highest_msgnum returning only the
highest message number. Use better $! test. Only create the empty
message file with sysopen when not $run. Use the full filename in the
error message when we couldn't find a new filename.