progress on article opts parser