Issue 6453 - Allow multiple invariants per struct/class

Build a linked list of invariants and insert a call to the next one at the end of the function.
Invariants are executed in lexical order.

http://d.puremagic.com/issues/show_bug.cgi?id=6453