Added experimental localsource files

just want these files in the remote repo for safekeeping and remote
access
removed inherited VdfFileNode classes

Different file types now supported by different load/save methods within
the single class. Functionally identical, slightly simpler, and allows
writing binary files back out as text.
Completely restructured package info

Removed PackageInfoCollection
PackageInfo now utilizes VdfFileNode to load its data
added expiry times for things like weekend trials
AppInfo now works.

Tester function now ends up with a very accurate game list.
added big commented out method

to read extended elements in appinfo. it's not needed now, but maybe
later.
Added enums for type and platforms

fixed some EOF checks on binary readers, because binary reads don't
actually (always?) throw EOF exceptions
eliminated most calls to Stream.Length because it's incredibly slow on
some stream types
won't compile - large database changes

Addition of lastUpdate, platform and parent fields to database
Genre, publisher and developer now stored as lists
Type switched over to new enum
no longer try to follow redirects, just record the parent

Ignored genres no longer count towards the max when using genre autocat
won't compile - updated DB save and load

added version number to the db
added several methods to xmlutil
replaced in-code literals with const strings for db xml names
won't compile - reworked DBEditDlg UI
won't compile - further dbedit updates

minor UI change
updated filtering code
won't compile - tab order update
Finally updated DB game edit dialog

DBEntry update dialog now shows all DB info
Added UTime to DateTime utility function
Added range clamping to DateTime to UTime function
DBEntry dialog tab order
implemented all filtering options in dbedit
Fixes to web scraping

some cleanup and renaming in gamedb
gamedb now only shows owned games by default
Updated AppInfo to include Parent

updated VdfFile NodeInt accessor to try to parse string values too
Implemented AppInfo scraping to the DB and dialog

Fixed display issue with Parent column in DB editor
Fixed crash if any list fields were null in the DB Entry editor
Fixed overwriting on scrape

Scraping used to overwrite existing entries completely, now there's a
method to merge the information in
Fixed UI issues

Fixed some visual issues with the edit form
List sorter now sorts empty items to be below non-empty
Fixed bug with saving LastAppInfoUpdate
added basic error check to appinfo update