Added GPL and some unfinished explanatory comments.