Action
An Action is an object from the response of the /payments API call that indicates what needs to be done to complete the payment. Each type of Action contains different properties, so we use polymorphism to parse which type of Action we are dealing with.
Action.SERIALIZER can be used to serialize and deserialize the subclasses of Action without having to know the exact type of the subclass.