Options support

1) add options support
2) option eagerCheck support
3) option ignoreEmpty support
4) touched list support and built-in touch list extractors