Handle cli options in a more abstract manner