Performance + documentation

Hopefully better performance on dumping service objects now
Add GPLv2 Header
Add documentation for some functions