object to xml plist implement; refactor project