This code worked in Swift 2.x:
/// An internal in-memory cache
private var dataCache = NSCache.init()
In Swift 3 it causes com
NSCache has been changed to Cache. NSCache.Anyway NSCache is now a generic.
public class NSCache<KeyType : AnyObject, ObjectType : AnyObject> : NSObject { ...
so the most general syntax is
private var dataCache = NSCache<AnyObject, AnyObject>()
The explicit init() is not needed (not even in Swift 2)