change request serialisation to handle arrays of custom primitive things... ugh.