Adding List1 type to avoid orphan instances where NonEmpty would usually apply
Switching use of NonEmpty to List1