@Nonnull
	public static Binding newBind(@Nonnull String id, @Nonnull String codesString, @Nullable KeyCode mask) {
		String[] codes = codesString.split("\\+");
		Stream<String> stream = Arrays.stream(codes);
		if (mask != null)
			stream = Stream.concat(Stream.of(mask.getName()), stream);
		return stream.map(String::toLowerCase).collect(Collectors.toCollection(() -> new Binding(id)));
	}
@param id
		Unique identifier of the binding.
@param codesString
		Series of keys for a keybind, split by '+'.
@param mask
		Optional mask to include.

@return Binding from keys + mask.
recaf-ui/src/main/java/software/coley/recaf/ui/config/Binding.java