splitting library in modules