use explicit logic for deserializing a cluster operation request

so the constructor is actually called and null checks performed.