Prepatcher implementation - source patching works other than generics, binary patching only partially implemented. Translation of patch file + annotations -> patchinfo works, but using horrible regexes as new JDT versions are unavailable due to conflict with old lib used in gradle plugin libs.

Signed-off-by: Ross Allan <rallanpcl@gmail.com>