Close #7, close #8, close #12 and close #13
Merge branch 'enhancement-#7-#8-#12-#13' into develop