many improvements
fixed incomplete license header
added missing doctype