Add / Use gluegen.basename prop. for remote ssh test
Software Rasterizer: Add 'Mesa X11' to GL_RENDERER list. EGLDrawable: Remove getWidth()/getHeight() EGL surface queries.

EGLDrawable: Remove getWidth()/getHeight() EGL surface queries.
This code is not only redunant, since the surface dimension is known in the NativeWindow surface
returned by GLDrawableImpl., but also causes an exception since the EGL surface might not be realized
at the time it's dimension is being queried.
CrossTest: Add AWT Unit-Test. Unit-Tests: Refine GLProfile request where we favor a more detailed request than getDefault().
Merge remote-tracking branch 'remotes/revane/master' into pulled
TestGearsES2NEWT: Remove redundant GLES2 test
Add native es2gears test (mesa-demos, eglut enhanced w/ programmatic lifecycle)
Add es2readsquare, reassembling JOGL's RedSquareES2 demo
NEWT/GLWindow.display(): No explicit surface locking/unlocking for GLDrawableHelper.invokeGL(..) - it's done implicit at makeCurrent()/release()

The explicit locking takes away the locking result, eg. SURFACE_CHANGED,
which is required to update the delegated drawable handles (e.g.: EGL surface handle).

With the followup fix of EGLDrawable.updateHandle()'s recreate EGL surface,
an EGL 'wrapper' can work on Windows (eg. ANGLE).
NewtFactory: Since the platform string references are unique, let's just compare the references instead of a string compare
NEWT/Windows lockSurfaceImpl(): Detect hdc change and result w/ LOCK_SURFACE_CHANGED

This allows an underlying delegation/mapping to update the handles, eg.: EGLDrawable.

See commit  a0177c8a1048683e5d43f4712f8f9e37091d4e85
Fix GLArrayDataServer.destroy(GL): vboName was cleared by super class before deletion
Complete LOCK_SURFACE_CHANGED ; Introduce NativeVisualID (Daisy chaining *GraphicsConfiguration) ; ...

NativeVisualID: New interface for Capabilities implementations,
  allowing retrieval of the native 'visual id'.
  Impl. by WGL, X11 and EGL.

JAWTWindow.lockSurface()
  - Detect surfaceHandle change an return LOCK_SURFACE_CHANGED (see: LOCK_SURFACE_CHANGED)

EGLDrawable:
  - Impl. updateHandle() (see: LOCK_SURFACE_CHANGED)

  - use NativeVisualID for EGLGraphicsConfiguration selection to respect a native 'visual id'

EGLContext.createContextImpl: Use NIO for attributes

EGLDisplayUtil: Enhance eglGetDisplay w/ DEBUG code and NativeSurface / EGL_DEFAULT_DISPLAY variation

EGL, XGL, WGL GraphicsConfiguration:
   - Don't set ALPHA_SIZE and STENCIL_SIZE if not requested in attribute list
     for context creation.
   - toString() shows proper identification, eg.: egl, x11, win32 ..

EGLGraphicsConfigurationFactory:
  Daisy chain GraphicsConfigurationFactory for native device type (currently only X11).
  This allows choosing the EGLGraphicsConfiguration and hence native visual id based on EGL
  when invoked via the factory model (generic).
  In case EGLGraphicsConfigurationFactory is not suitable or doesn't produce a native visual id,
  it falls back the the original one.

X11AWTGraphicsConfigurationFactory and X11Window:
  Use generic NativeVisualID which allows EGLGraphicsConfiguration implicit.

*GraphicsConfiguration's DEBUG flag is pushed up to DefaultGraphicsConfiguration

LOCK_SURFACE_CHANGED:
    - commit 006e9fe402a0a47b45fd2c4af51296aef895e8b5
    - commit a0177c8a1048683e5d43f4712f8f9e37091d4e85

Impact:
  - Fixes EGL/GLES (wrapper/native) usage on X11, proper Xvisual selection w/ EGL
  - Fixes EGL/GLES (wrapper/native) usage on Windows, ANGLE works w/ NEWT and forced ES2
Fix GLWindow/SWT-GLCanvas: set context synchronized ; Misc Changes

Fix GLWindow/SWT-GLCanvas: set context synchronized
  - GLWindow fix commit a0177c8a1048683e5d43f4712f8f9e37091d4e85.
    Removed explicit recursive surface lock requires
    recursive context locking, otherwise concurrent rendering fails.
    The implicit recursive surface lock within context makeCurrent()
    is applied after the context lock itself.

Misc Changes
  - Fix TestPBufferDeadlockAWT, which was not using the unique profile string reference
Test*ES2Newt: Add shutdown w/ type to internal loop test
linux-armv7-cross script: Introduce TARGET_PLATFORM_ROOT
X11 Fix NativeVisualID regression (commit 90c46b1ef1f199ceb63e85c85e9ebeb919d49c4a) ; Using plain X11 Capabilities

In case X11GLXGraphicsConfigurationFactory and hence X11GLCapabilities (glx) is not being used,
the X11GraphicsConfigurationFactory used plain Capabilities object for the chosen caps.
The latter is not derived from NativeVisualID.

- Added X11Capabilities supporting NativeVisualID to fit our needs.
- X11Capabilities.XVisualIDComparator uses NativeVisualID.NVIDType.X11_XVisualID
- *Capabilities have better unique names in toString()
remote unit test reorg (all, awt, newt)

junit.run.remote.ssh -> junit.run.remote.ssh.all
added                   junit.run.remote.ssh.newt
added                   junit.run.remote.ssh.awt

junit.run.tests issues 'junit.run.remote.ssh.newt' only for now.

manual remote ssh unit test invocation:
  bash scripts/make.jogl.all.linux-armv7-cross.sh -f build-test.xml junit.manual.run.remote.ssh.newt
  bash scripts/make.jogl.all.linux-armv7-cross.sh -f build-test.xml junit.manual.run.remote.ssh.awt
  bash scripts/make.jogl.all.linux-armv7-cross.sh -f build-test.xml junit.manual.run.remote.ssh.all
NativeWindow public-spec to public-impl reorg (javax.media.nativewindow.<impl> -> com.jogamp.nativewindow.<impl>) 1/2
NativeWindow public-spec to public-impl reorg (javax.media.nativewindow.<impl> -> com.jogamp.nativewindow.<impl>) 2/3
NativeWindow public* reorg 3/3 ; NativeVisualID -> VisualIDHolder incl. proper utilization.

- VisualIDHolder: Update documentation (Exception case, etc)

- NativeVisualID -> VisualIDHolder (public)
  - incl. generic Comparator
  - better doc and enum values
  - VID_UNDEFINED == 0
  - methods shall not throw exception, but return UNDEFINED

- CapabilitiesImmutable extends VisualIDHolder

- All Capabilties impl.
  - use VID_UNDEFINED for undef. value
  - use final private (immutable) fields

- AbstractGraphicsConfiguration extends VisualIDHolder

- X11 CreateDummyWindow takes (int) visualID