Better label property inheritance

 - Calculate the combined attributes from the passed in attributed text and the label at render time, rather than when setting the text. This allows for proper updating when changing label properties. It also means that -attributedText is the same as the text that is passed in, and does not include the label properties.
 - Don't wipe out other attributes when inheriting the foreground color from the context