Much nicer option parsing.