#109 #101 #99 added default options object and simplified/rewrote demos