The following where edited manually for compatibility:

- all in Registry/
- all in Samples/

changed relative imports: 'import x' to 'from . import x'

changed occurences of .iteritems() to .items()

unpacking strings using struct.unpack:
1st param str() and treat return val as byte string for compatibility
with py3

include:
from __future__ import unicode_literals to enable string literals as
unicode in py2.x
from __future__ import print_function to allow print functions in python
<= 2.7

changed occurences of var.next() to next(var)

workaround any use of ord() on a bytestr element.
In py2, type(b"aaa"[0]) == str, but py3 type(b"aaa"[0]) == <class int>
which make ord() fail.
The trick is to use slicing instead of indexing into the byte str. This
results in a byte string in b
oth python2 and python3. So b"aaa"[0:1] instead of b"aaa"[0] to get 1st
element

Added classifiers to setup script. Py3 classifiers and while i'm at it,
others also.

Increased version from 0.2.7 to 0.2.8

Tested against some win7 registry and winxp registry files using the
samples/ scripts.
Compared the outputs of python2.7 and python3.3 to be the same. Assuming
other python versions also w
ork.