Adds XML documentation and tests