Add method to parse a supplied User Agent string.

CI has a pretty good user agent parser, but, why limit it to only the current user?  There are times where it is useful to be able to parse a string, like processing log files or the user session table, and be able to use the goodness built into this class.