moved textField properties to their constructors to clean things up