Added JavaDoc for everything
Fixed a bug where required criteria for options was ignored.