Split functions as build components to enable tree shake, I'm currently working on recreating the library to support tree shake, will you prefer that?