initial commit classes for working with options
moved stuff to new options classes, cleanup, fixes, work-in-progress, etc.