reformat changes
clean up options handling and allow options.tokens in addition to options.global
fix bug with custom prefix/suffix
remove block of code that doesn't appear to be needed.

matches[3] will always be the same as the input text.  This code block appears to assume that the input is a valid JSON string, and looks like it is trying to replace the root object's attribute names with their values (if they attribute name has the specified prefix).  This doesn't seem correct or useful.
rename some RegExp variables
optimize some RegExp code
be more explicit when retrieving a token's value and allow an option for preserving unknown tokens.

An unknown token is a tokenName which does not exist as a key in the options.tokens object.  By default unknown tokens will be removed the source text and replaced with an empty string.  By setting options.preserveUnknownTokens = true, the source text will not be changed when that token is not found.
make replace() method more generic (i.e. don't pass in or modify the file)
beef up the exception handling
cleanup/optimization of the module.exports method
adding .gitignore file
add mocha test cases
fix a bug where tokens were not always being found (identified with the new test cases)
add .travis.yml
modify the README to include more information about the additional options available
update dependencies to the latest versions
gulp requires node v10 or greater so update .travis.yml and package.json accordingly
Merge pull request #5 from wonderlic-stephene/master

Added test cases, fixed bugs, cleaned up code and formatting, and added a new configurable option.