Complete overhaul
When I released the nuget package at 1.2.1, I was quite surprised that there were people actually downloading it. Beacuse of this, I started to look at this project from a bit different perspective and decided that I try to give it a more useful / reliable form.
So:
- I tried to make the public interface method names easier to understand, this is obviously a breaking change
- I standardized the namespaces
- Renamed some enum members / updated their descriptions
- Added more options to SavePreferences (7,14,28 days of keeping data, forever is gone for now, replaced by 365 days)
- Separated archive and current day data (Less disk write when you keep a lot of historical data)
- High precision types are now completely separate and there's an interface before them (making the way for the low precision type, which I will implement)
- Saving is now done separately from usage add, it is now halfway between two usages (just to make sure I'm not tring to add data and serialize at the same time)
- Added a unit test project, which I intend to fully build up to test the internal logic
- Resolution is now stored per usage (so it's possible to change it on the fly)
- Added some validation after serialization