moved libraries to sub-module