OS X build fix.

Thanks to Timothee Cour for reporting the issue.
Fixed vector global initialization for > 1 byte elements.
Merge pull request #333 from ldc-developers/vector-init-fix

Fixed vector global initialization for > 1 byte elements.
Avoid unnecessary memset when allocating array literals.

This completes the merge of pull request #294. Thanks a lot to
Chris Holdsworth who originally wrote the patch!

GitHub: Fixes #294.
GitHub: Fixes #141.
Merge pull request #335 from klickverbot/avoid-unnecessary-memset

Avoid unnecessary memset when allocating array literals.
Add support for new parameter attribute `returned`.

Starting with LLVM 3.3 a new parameter attribute `returned` is supported.
The attribute states that the parameter is the return value, too. This is the
case in constructors. (Destructors and postblits do not return `this`.)
Attribute `returned` is now added to the `this` parameter of constructors.