moved funtils to be an independent npm