Move info functions to own module
Refactor clGetInfo: all wrappers use a common macro

Compiles, works, tests pass
Info module handles all CL object queries generically

All specific wrapper _info functions are now macros which use the
generic info functions in the info module.