GenericUnWrapper with test (GEOS-6578)

GenericUnWrapper implemented with method reflection, preconfigured unwrap method lookup for several JBoss environments.

https://jira.codehaus.org/browse/GEOS-6578
Wondering, given that we call unwrap basically for each feature read from the database, and thus we are going to get a fair amount of pressure over this code under concurrent read load, wouldn't it be better to use a concurrent hash map and avoid the synchronizations later in the code?