Mario Weilguni <mweilguni@sime.com>	Initial coding
Inge Wallin <inge@lysator.liu.se>	Cleanups, lots of enhancements