breaking: wildcard algorithm, escape characters; features: new error handling, arbitrary input files; patches: circular dependencies and initializations