Added a new pass to generate internal implementations of abstract classes to use when a method with an abstract return type returns a value.

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