bash's earlier problems with subshells running scripts starting #!/bin/bash
seem to be solved, so explicitly mark all scripts as requiring bash.
Furthermore, change all source built-ins to prefix the path with "./" as
required by POSIX. Together these changes should stop further problems
with changes of source built-in semantics in future.
The idea is to move the build system out of the project tree as much as
possible. This has two benefits:
- it does not add any baggage to somebody who just wants to compile the
project, and doesn't want to create any new modules,
- it means that project trees don't have to be updated every time a
change is made to the module instantiation stuff.