Updated to use new mechanism for weak delegates using Interfaces

Updated to use new mechanism for weak delegates using Interfaces

Removed the old weakDelegate property

Updated the sample