improvements to Option