use feature-complete version library
extract storage module
extract font module