Prevented renaming of methods when a base class has a property of the same name. Made the delegates used in abstract implementations prefixed with an underscore and internal.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>