introduced new interface inspired by go.flag