fixing button sizing
breaking out some things into other directories
modularizing the api