use literal instead of symbol for init

which enables better code to be generated for small wrapper structs, i.e.:
```
mov EAX,3
```
instead of:
```
mov EAX,S.init
```
for:
```
struct S { int a = 3; this(int I) { } }
S s = S(1);
```