Fix for Issue 615: reverse swapped Class.isAssignableFrom calls in Mapper.isCompatibleForOperator

Broken up into 4 commits in decreasing order of importance.  Just the first commit 417da9a would be enough for our use case as described in Issue 615.  The second fixes a related but probably less common issue.  The third fixes an issue that will probably never come up in practice but should be fixed for completeness.  And the last commit ac19bd9 makes no functional changes but cleans up some warnings by adding a type parameter to Arrays.asList() calls in that same method.