use weak IBOutlets consistently (when possible)

Apple’s current recommendation is to use weak references for IBOutlets,
except for top-level XIB elements and when the given class doesn’t
support weak references
removed unnecessary accessor declarations
always use copy property with NSString/NSData
always use one of assign/strong/weak/readonly
nonatomic all the things

http://stackoverflow.com/a/12013224/78255
http://www.friday.com/bbum/2008/01/13/objectivce-c-atomic-properties-threading-andor-custom-settergetter/
consistent order for property attributes
whitespace fixes