Learning scala fp Implemented custom Option, Either, List, Tree, Stream classes and own libraries for testing, random generating and parsing.