Create a class for representing a text box with custom font, shadows, colours, padding, background, icon, and most importantly auto height sizing (a la HTML)