By using Core::Timer that accepts Function instead of JS::SafeFunction in Platform::Timer does we fix memory leak caused by circular dependency of timer's callback and timer itself.
URL::port()
BrowsingContext
Navigable