Fix various instances of accidental destructions

- newRef() should return a pointer so it doesn't create a new temporary,
causing the original object to lose its' refcount upon return.
- PyArg_ParseTuple wants *references*. Give it those, not the actual
pointer targets (which are all NULL at this point).
- Remove redundant "struct" keywords, they're not needed for defining
statics of existing structs.