Handle return statements that have values

Any guidance on this one? I see several problems with it:

 - I added AstReturnStatement even though it only applies to statements that return values. Regular returns come out as symbols
 - The glsl spec doesn't have a return_statement top level rule, it's jump_statement. Should I make a jump statement node?
 - Can this somehow be repurposed with other existing classes already? I don't know how you're implementing the node classes - are you eventually planning to go 1:1 with the full spec?