Tests for "satellite" require unnatural edge case checking

I feel like the first test of “satellite”

Case { description = "Empty tree"
     , preorder    = ""
     , inorder     = ""
     , expected    = Nothing
     }

should be

Case { description = "Empty tree"
     , preorder    = ""
     , inorder     = ""
     , expected    = Just Leaf
     }

Reasons:

  1. the BinaryTree type already supports empty trees, so expecting Nothing is redundant
  2. empty list is a valid inorder and preorder traversal for an empty tree, so expecting Nothing is misleading, as it indicates that an error has occured.
  3. A recursive implementation of treeFromTraversals naturally outputs Just Leaf on empty inputs, thus, satisfying the tests requires an awkward wrapper function.