Change locking model for data. Get rid of ConcurrentDictinary as it is too memory hungry and prevents making the system portable