Added tests and documentation for None
Added tests for FirstOrDefault, LastOrDefault, SingleOrDefault and
ElementAtOrDefault
Added a helper to test null checks
Added tests and documentation for LeftOuterJoin, RightOuterJoin and
FullOuterJoin