Moved the library in a proper module