namespace + reorganize classes - fix #29 fix #13