finished up methods and some delegate stuff