More work on optional functionality. Added more examples, updated readme.