StructuredText.to_dict() returns a string instead of a dict if structuring_format is None
PEP8 fixes
Added domain_specific_object_attributes in from_obj(), removed some dead commented out code
Renamed domain_specific_object_attributes to domain_specific_object_properties for accuracy and commented out all uses for now; we don't have a CybOX API for handling it properly at the moment
Fixed typo in dictionary name in to_dict
Added is_plain() to Property class for overriding existing method in base class
Added missing ObjectProperties() calls in from_dict() and from_obj()
Removed string returning shortcut in to_dict(); it breaks compatibility with any classes that may extend StructuredText with other attributes or elements
Added DomainSpecificObjectProperties and fleshed out corresponding usage in ObjectType
Added xsi_type class member and fleshed out corresponding usage in DomainSpecificObjectPropertiesType
Fixed typo in to_dict() of ImageInfo
Use a more complex and extendable check for shortcuts in StructuredText
Add istypeof function
Attempting to set a String object's value will throw a valueError if it's not already a basestring
Make DateTime._parse_value a static method for consistency
Add tests for EmailHeader.subject
Add test for 'sender' field.
Convert EmailHeader 'from' and 'sender' from properties to TypedFields

'from' works just like 'sender' so the tests weren't duplicated
Move try_cast to a class property than each instance of that type in a TypedField
Automatically determine dict key name and attribute name from XML name