move List and String into basic_types.hpp