Reworked the UI. Added MagnetUri. Abstractions and implementations.