add missing constructor fix comment
- simplify some code - add some todos and possible bugs
closes #286