code: public Branch createBranch(String name) throws IOException
      {
          Label label = labels.get(name);
          if (label == null)
          {
              label = new Label(name);
              labels.put(name, label);
          }
          return label.createBranch(position());
      }
docs: Creates a branch for possibly unknown address
  @param name
  @return
  @throws IOException