better parsing for options, adding specs