JavaCore#create() only returns null when the given project is null

The previous statements checked that, so just assert javaProject != null and remove
the null check.

This also helps Eclipse's null-pointer-access check.
Fix compilation

Collections.emptyMap() produces a Map<Object, Object>, we need to be explicit here.
Simplify the logi for #doLaunch()

If resource is null the method does nothing, but having the odd check inside the try makes
Eclipse complain about a potential null access in the catch. Just use an early return here.
Update the target to 4.4(milestone)