ENH: init moduel using template
Merge remote-tracking branch 'github/master'
Merge remote-tracking branch 'github/master'
ENH: copied and adopted from original code

the original codes are all right, but the cmakelist and xml files are not in the same format as those generated by the template. so change that.
BUG: compiles, now testing