Work on task #16
Work on task #103 and #128
Rework on issue #16
Rework on issue #284
Merge pull request #310 from Lebedinsky/master

work on issues #16, #284