Adding self-contained demo;
House cleaning;
Moved option building to separate function;