fix #513 $constructor, $destructor consistency refactoring

Adding the possibility to use $constructor when calling a parent constructor.
refactor Update Syn

Close #33 close #491