Merge pull request #30 from retupmoca/master

Fix explicit library extension
Drastically reduce nativecalling overhead
Micro-optimize map_return_type even further :)
Use concrete value when testing CArray[OpaquePointer].

This uncovers some missing functionality in on JVM the old code missed.
Properly decont in typed CArray STORE/FETCH.
Store return type object for callbacks.
Correct wording of a test description.
Remove bogus refresh test.

The test checked that a covertly modified struct member wasn't discovered
until after we explicitly call for a refresh, but that's probably not
something we want to require.
Also update test count. Derp.
Support compiling test libraries on Moar.
Add Moar hanlding of so/dll/whatever extension.
Let test suite compile libraries on JVM too.
Guess .dll on Windows when no data.

If you ignore the link error and use a DLL from another platform's
build, this gets things working on JVM on Windows.
Updates to CArray to convey type to REPR compose.

This will be needed for Moar to be able to handle CArray. Can maybe
get some further cleanups here in the future once everyone switches
over to the compose protocol. Didn't try on Parrot yet, but no JVM
regression on CArray tests with this patch.
Tweak 06-struct.c to cope with MSVC.

Treats long as 32-bit even on a 64-bit box.
Fix assignment/binding confusion.
Correct test message.
Another container avoidance in binding.
Another Win32 hack/workaround.

Will solve these properly shortly.
Ensure we pass decont'd types to NativeCall.