Pushed init code into a method and added awakeFromNib to allow for creation from Interface Builder