[new AA] implement aaLiteral and aaInit

This functions will be used to constructing AA values: literals and nulls. When this PR will be merged, I will create PR for dmd, which uses this functions, and when dmd PR will be merged, I'll create PR, which rewrite this functions to use new AA implementation.
I'd rather you did it via `*(cast(void[]*)&keys)` instead to make it clear it's a reinterpret cast.