human_name_parser is intended to split names into their component parts.
Adam Bachman
gem "human_name_parser", "~> 1.0.0"