Small refactoring in preparation for fixing the 'ItemRemoved event not fired' vulnerability
Changed type of 'MyOfferedItems' and 'OtherOfferedItems' from List<ulong> to IEnumerable<TradeUserAssets>.

This is necessary for the upcoming security patch.
Make TradeUserAssets immutable, equatable, comparable.
Fix for https://github.com/Jessecar96/SteamBot/issues/602 - exploit caused by Steam sometimes not correctly sending the ItemAdded/ItemRemoved events
Merge pull request #605 from BlueRaja/FixItemRemovedEvent

Fix item removed event