Andrew,
As you will become familiar with the technique, you will realize that you don't have to distribute the VIs in a single LLB. You can save the VIs in many LLBs or directories. This allows to update only a part of the application. The main point to take care is that all required subVIs will be found by the loader. That is what the Application Builder does: it loads all required VIs in memory and save them in one or two locations. Since the relative paths of the VIs aren't changed when the application is distributed, there is no search problem; all VIs are found where they are expected to be.
The Application Builder does all this saving/relinking for you but if you need the flexibility of the plug-in architecture (loader), you have to do it by yourself.
The following applies to point 2)(vi.lib VIs not included in the distributed LLB):
When the loader is built into an application, by default it expects vi.lib directory to be in the executable directory, where obviously it isn't. Since internally, a VI that calls a subVI from vi.lib stores the location of the subVI relative to vi.lib directory (e.g.
\utility\file.llb\...). When the loader loads a VI with a vi.lib directory, the VI is not found unless the "Library Directory" option is changed to point to the actual vi.lib. The "Library Directory" option is an application option, not an Application Builder option. You can set the location of the vi.lib library if you let, in the loader run-time menu, the item Tools/Options. You can set it manually when running the loader (relaunch requird to take effect) to enter the vi.lib path (actually, the parent directory of vi.lib). Alternatively, you can put a line in the application ini file setting the "libdir" value, for example:
libdir=C:\Program Files\National Instruments\LabVIEW 6
When you are set this way you shouldn't have problem with the VIs from vi.lib. At my place, the vi.lib directory is put on a network shared drive and other loader applications run without problem using it remotely, including Config file VIs.
It is a lenghtly explanaition of a convoluted problem, if you need more ligth on some points, just ask.