When lazy-loading tables, copy ValueFormat

Otherwise it may be overwritten before we use it.
Minor
Remove tableStack in favor of countVars

We only needed tableStack to look back for counts.  So, just store
counts.  Gives ~8 speedup for large fonts I tested.  We are not
faster than not loading fonts lazily without this patch, so the
laziness patch combined with this doesn't have a net negative
performance impact anymore.
Make ValueRecordFactory() immutable

Gives another 3% speedup.
Use slots for OTTableReader

Slight performance gain even.
Merge remote-tracking branch 'upstream/master'
Initial Python 2 and 3 modifications:
* replaced <> by !=
* replace `a` by repr(a)
* replace IntType, TupleType, etc. by int, tuple in type testing
* replace string.strip(a) by a.strip(),
  same for string.split() and string.join()
* replace def function(arg1, (arg2a, arg2b), arg3) by
  def function(arg1, args, arg3) followed by arg2a, arg2b = args
* replace print a by print(a)
* replace map() by list comprehension when necessary
* looked at https://bitbucket.org/Milla/fonttools
* import print and division from __future__ as Milla
* changed some print and / to // as Milla
* use argument named element for xml functions as Milla
Merge branch 'py2and3' of https://github.com/moyogo/fonttools into py2and3

Conflicts:
	Lib/fontTools/ttLib/tables/otBase.py
	Lib/fontTools/ttLib/tables/otConverters.py