Squashed commit of the following:

    change (CALL|RET) Operand
    implement VisitConstructorNode, VisitSetterNode,
    VisitAllocateNode, OpenClassField,
    Visit(Get|Set)IndexNode, VisitArrayLiteralNode,
    VisitApplySymbolNode and VisitUnaryNode