Better list subtyping

This is to address #125.