Extend type cover grammar to support lifetime parameters on generic types

Fixes #31