Making page linking use GetHyperLinkToObject as it's more reliable.
Add log entry for completion of SmartTodo to the model page (+Test/Refactor).

This required correctly implementing and testing much of the SmartTag processing code.