code: private ServiceElement readService(Location location, String documentation) {
      String name = reader.readName();
  
      reader.require('{');
      ImmutableList.Builder<RpcElement> rpcs = ImmutableList.builder();
      ImmutableList.Builder<OptionElement> options = ImmutableList.builder();
      while (true) {
        String rpcDocumentation = reader.readDocumentation();
        if (reader.peekChar('}')) break;
  
        Object declared = readDeclaration(rpcDocumentation, Context.SERVICE);
        if (declared instanceof RpcElement) {
          rpcs.add((RpcElement) declared);
        } else if (declared instanceof OptionElement) {
          options.add((OptionElement) declared);
        }
      }
      return new ServiceElement(
          location,
          name,
          documentation,
          rpcs.build(),
          options.build()
      );
    }
docs: Reads a service declaration and returns it.