[enh] fix issue 6549 - Implement contracts without implementation.

http://d.puremagic.com/issues/show_bug.cgi?id=6549

Fixes the abstract stuff, I'm not sure about contracts in function forward references used by closed-source libraries:
```d
void func(int i)
in { assert(i > 10); }
```