code: public StringTag setValue(String value) throws UnsupportedEncodingException {
          if (value != null) {
              this.value = value;
          }
          byte[] bb = this.value.getBytes("UTF-8");
          size = VINT.fromValue(bb.length);
          return this;
      }
docs: setter for value, updates the size of this tag
  
  @param value
  - value to be set
  @return - this for chaining
  @throws UnsupportedEncodingException
  - in case UTF-8 encoding is not supported