add high-level Library wrapper …

- loadLibrary now returns a Library struct
- Library sub-types the native platform handle (alias this)
- Library.loadFunc loads a D mangled function
- Library.loadVar loads a D mangled variable

The single most annoying pull request I ever prepared. Too many long-standing unrelated bugs for such a straightforward implementation.