clang-format: Don't insert spaces in front of :: for Java 8 Method References.
The existing code kept the space if it was there for identifiers, and it didn't
handle this. After this patch, for Java this is handled in addition to
identifiers, and existing space is always stripped between identifier and ::.
Also accept :: in addition to . in front of < in foo::<T>bar generic
Differential Revision: https://reviews.llvm.org/D52842