Add const member function
Modify Namespace::end
Add derived class
Add test and some comments
Merge branch 'develop'