Updated grammar, includes abstract types

+More examples