Refactored implementation; decomposed tests for options testing; added more to README