added a new function, gives version information.
Formatting, fixed license formatting,
improved function return values.
experimental support for custom return values