EDIT: All History functions for creation of history events removed.
Every HistoryEvent is now been created in the Canvas functions. Each function creates and passes as an argument the new HistoryEvent to History.addEvent(), which is now a public function.
All pointer-of-pointers are been removed and references-to-pointers are been added instead.