Uh, really? So many things magically done in a constructor? Will the other classes (Label and Description) do something similar?