The attached patch contains several improvements to the snippet macro:
1. Make the ignoreDownloadError parameter actually work (it is read, but doesn't actually do anything in the current version)
2. Fail if a named snippet is used, but either a START or END for that specific name can't be found (currently nothing is included if the start isn't found, and the whole rest of the source file is included if the end can't be found)
3. Don't match named snippets if the desired name is a substring of the found name (e.g. if a source contains "START fooBar" followed by "START foo", including snippet "foo" currently actually matches the one named "fooBar")
Unit tests are included.