fixed comparison of decimal against null with Dictionary.Contains(Key)
lots of changes, added threadsafe logging, and the active trades now work