Omit command name, input file name from arguments passed to the lib

They obviously don't exist in the proposed library API either
lib: Support altering the set of OpenCL extensions the preprocessor allows
Put validated source to in-memory buffer in lib, print in driver
WebCLAnalyser: Add const versions of the collected data getters
Make discovered kernels available in lib API

This is going to be used to print the JSON header in the driver, but
that's going to involve some additional refactoring of WebCLHeader