dbaefef rejig Element contents a bit

Authored and Committed by adamwill 8 years ago
    rejig Element contents a bit
    
    do more of the stringification in __str__ rather than __init__,
    so self.contents isn't so heavily modified. self.contents will
    always be a list of string-able things; if passed a string or
    Element as 'contents' it will just be made into a one-item list,
    if passed a list of strings or list of Elements it's kept as
    self.contents unchanged. Then in __str__ we do the 'stringify
    everything in the list and decide on newlines' stuff.
    
        
file modified
+21 -11