Adding homework encapsulation and polimorph