remove cancelButton and destructiveButton because we don't use it
shift methods around
move our button class to extra files
make properties readonly, so we have to use the designated init
implement basic functionality (init and button adding)