Trivial constructors should allow the struct to be passed as POD

https://d.puremagic.com/issues/show_bug.cgi?id=11740

Improvements to be done:

1. ``isPOD`` does not check for assignment operators at all.
2. ~~``isPOD`` does not cache its return value.~~
3. ~~Can not infer whether the ctor is nothrow as fbody might not have fully ran its semantic.~~