v0.1:  2006-04-28
First release.

v0.1a: 2006-05-16
Add 'Value' commands:
	readvalueblock
	writevalueblock
	MIFAREvb (set variables from value block)

v0.1b: 2006-05-29
Make readblock non MIFARE specific
Add readMIFAREblock command
Add reset() call to all test programs (to switch off constant read)
Add readlfx program to support ACG LFX reader

v0.1c: 2006-05-30
Add LFXTags hash (125 kHz tag types)
Add lfxtype.py (command line tag identifier)

v0.d: 2006-06-01
Add access control block user data byte to MIFARE structure
Add LFX tag type detection to cardselect.py 

v0.e: 2006-09-29
Add ICAO 9303 structures for Machine Readable Passports
New test program: mrpkey.py for ICAO 9303
Move reader config to RFIDIOtconfig.py
Add EM4x05 ID decode

v0.f: 2006-10-24
Emergency release - 0.e lost in webserver disk crash
Contains work in progress!!!
Rename EM4x05 decode to more generic FDX-B
Add EM4x02 'Unique' ID decode/encode
Add passport file reads and image display

v0.g: 2006-10-27
Tidy up!
Update all version numbers

v.0.h:
Add Hitag2 reading (readlfx)
Add fdx-b cloning to Q5 / Hitag2 (fdxbnum)
Add q5unfuck (does what it say on the tin!)
mrpkey - display all data in GUI
fdxbnum - add ability to write raw 16 digit HEX (to clone non-compliant tags)

v0.i: 2006-12-10
Fix login error for sector 0

v0.j:
Fix iso_7816_fail to allow non-passports to fail properly
Add support for Frosch Hitag reader/writer
Start to rationalise routines to always return True or False
fdxbnum - add Frosch support for Hitag2
fdxbnum - wait for blank tag in WRITE mode
