Split out the 3 match types (email, twitter, and url) into separate classes, in preparation to pass them to the `replaceFn`

Also add utility methods.
Update a few doc comments and variable names on Autolinker and AnchorTagBuilder.