1. - Cleaned up much of the original code
2. - Added GPL licence (COPYING) and some GPL statements