Added null surface check to DrawTo()
Created a generic Button class, for a UI