Option 1: Use Tags
The easiest approach is to not do a folder hierarchy but instead use "tags", i.e. a single level of organization. Just create a new table of tags and a connection of many tags to one document, then use a form to add the connections.
Option 2: Create a Folder Structure with a Table and Connections
To create a real hierarchy is more tricky but is possible, I discovered how to do it with experimentation with text formulas. You need to decide ahead of time how many levels of hierarchy to support, in my case 4, and you need a document at each level before the next lower level will appear in navigation.
Create a folders table and a connection between document and folders. Also create a connection between folder and folder, and call it parent folder. Then use text formulas to create levels of folder name with a bracket, like so:
For a four-level structure you need to create three "level" formulas, and then a "Name with Hierarchy" formula which is the same thing. Then under settings, set Display Field to Name With Hierarchy.
Here are all the fields you will end up with (including an additional formula to display subfolders with a document count):
And here is what it looks like in practice once you enter some data:
Now you can create a page to display the top level of folders. Add a list or table, and filter it on Parent Folder is blank. This will give you only the top level.
It will look like so:
Create a page to display the document list within the folder, and use the various fields to give navigation to parent and sub folders:
The only problem I have run into with this approach is that when creating a connection on the same table, you cannot use it directly on pages. Therefore, if there are multiple documents in one subfolder, the subfolder display, which is actually using documents, shows multiple entries. I haven't figured out yet if there is a way to eliminate duplicate subfolders, or if there is another way to display them that will work better, besides some inefficient jQuery.