I'm not sure what I'm doing - make generic type arguments be TypeAccess instead of VariableAccess(es)
Clean up part of CGenerator for writing variable decl accesses
Use match in VariableAccess visitor, split AccessWriter into other file