add list module without polymorphic compare

Took a stab at List. Is this interface ok?

the way you'd use it would be:

`module List = Monomorphic.List`