Semi-applied datatypes in instance declarations