This does not help with existing files (but see below), but here is what I have set up: I put the directory tree with indexed files and also the DT databases into a virtual disk (dmg). No matter where you keep the dmg file, when you mount it, it will appear at the root directory of the filesystem in “/Volumes/”. This appears extremely portable to me. In addition, this virtual disk can easily be set up to be encrypted. To be prepared for a lot of data, use the “sparsebundle” type, and choose a very large maximum size. In reality, the sparsebundle will only take up the space currently used (not exactly true, but still).
Update: You could migrate to a new location (e.g. using the sparsebundles, but not necessarily) by importing all your indexed folders in to DT and then turn them into indexed files again by exporting into new indexed folders (use “move to external folder” in the contextual menu) which you set up in the new location. You would have to set up the new indexed folder structure by hand.
If you have an indexed hierarchy that you want to move to a new location, move all the folders into the database. Create a external folder in the new location to serve as the root of the hierarchy. Index that single folder. In DEVONthink, move the now-internal hierarchy to be children of the newly indexed folder. Then use “move to external folder” to externalize and index that hierarchy in their new location.
(Using a slightly more complicated set of steps – which the reader can work out on their own – that root folder created at the new destination can be eliminated from the picture.)
Software development is not a trivial thing, especially with an application as complex as DEVONthink and also with things concerning the filesystem. Note, that we also have other changes and fixes planned and in progress that must be prioritized. This is part of why we don’t announce timeframes.