Updated to modern objective-c

removed methods from private headers. changed enums to fixed underlying
types as per wwdc 2012 session 405. uses boxed expressions as much as
possible. changed initialization of mutable arrays to [@[] mutableCopy]
and verified initialization of dictionaries.