Added `-[NSArray validateAsPropertyList]` and `-[NSDictionary validateAsPropertyList]` which hunt down any items within arrays or dictionaries which are invalid for property lists. This method is used when we fail to write out a dictionary... and we now log said failure.
This prevents us from silently failing to save preference changes for over 2 years... just as a for example. Remember the recurrent "My change to the idle preference in the Status preferences just won't save!"? Yeah... it's because the status preferences dictionary was getting an NSNumber key set inside a contained dictionary... which isn't serializable.
git-svn-id: svn://svn.adiumx.com/adium/trunk@22537 1c916fce-81e2-0310-a464-8ca513f45935