refine Optional syntax & semantics
update readme