sftp server, file browser

configuration
---
to configure sftp server:
* add `[sftp]` section to `default.ini`
* add `root` option to `[sftp]` section, pointing at root folder for files
* (optionally) add `umask` option to `[sftp]` section for default umask on uploaded files

to enable uploads:
* create `__uploads__` directory in sftp root

to enable file browser:
* add menu option for `gosub('fbrowse')`

things to add
---
* `FILE_ID.DIZ` caching, but that seems like premature optimization at this point
* ability to enter manual descriptions for files (will depend on same storage mechanism that holds `FILE_ID.DIZ` cache)
* virtual `FILES.BBS` generation so that sftp clients can view descriptions of a folder's files without being logged in via terminal server
* integration with x/84's IPC logging mechanism
* better detection of file download completion (currently, file is removed from user's tagged list as soon as it is opened via sftp, rather than when it is finished)
* tracking uploads/downloads (i.e., who uploaded what, how many times has something been downloaded, who downloaded what, etc.)

notes
---
* this adds `filesize` to `common.py` for a human-readable file size function as per #146
there is now a `umask` option in `[sftp]` section of `default.ini` for setting the default umask, and if it is not present, it will default to a more-sane `0o664`.