Corrected comments, added licensing and versioning, added dummy function declarations for objects that I can't implement yet because I don't have access to a supporting agent.