Allow usage text to be passed as a string.

Allow usage text to be passed as a string, and also create a new `ParsingOptions` type for passing any parameters.

This breaks backwards compatibility.