Update README and Documentation.

Reformatted all source documentation to match standard javadoc, fixed whitespace with `// MARK:` comments. Added getMatchesForRegex(...) and getMatchesForPrefix(...). Added various optimizations to utilize internal functions. Changed some return parameters to better match the method's purpose. Tried to shorten any method names if possible.