moving everything into lib
no longer need spike