code: public static Hasher with(Version version) {
          return new Hasher(version, new SecureRandom(), new LongPasswordStrategy.StrictMaxPasswordLengthStrategy(MAX_PW_LENGTH_BYTE));
      }
docs: Create a new instance of bcrypt hash with given {@link Version}.
  Will throw an exception if given password is longer than the max length support for bycrpt of {@link #MAX_PW_LENGTH_BYTE}.
  
  @param version defines what version of bcrypt will be generated (mostly the version identifier changes)
  @return new bcrypt hash instance