update the base class
update the header file
update the cpp file
add the unit test
Merge branch 'develop' of https://github.com/yorkerlin/shogun into develop