minor changes
allow option arrays as well as key:value objects