use fs.read() to load the weasel source, rather than open().read() so we work on Windoze