Add GPOS table support.

- Added src/gpos.{cc,h} for supporting GPOS table.
- Some lookup type subtables (e.g. context positioning subtable and chaining
  contexual positioning subtable) have the same structure as those in GSUB
  table. So I implemented such lookup type subtable parsers in lookup.cc.
  These will also be used for parsing GSUB table when I add GSUB support.
- In parsing ClassDefFormat, we now allow class value is 0 because there is no
  reason to reject such value.
- Changed some interface/implementation of parsing lookup list table to make
  them more clear.

As far as I checked, some fonts contain invalid GPOS table and OTS will drop
GPOS table of them. See comments in gpos.cc for more detail.

BUG=27131
TEST=http://code.google.com/p/ots/wiki/HowToTestOts (Verified with ~4000 TrueType/OpenType fonts)


git-svn-id: http://ots.googlecode.com/svn/trunk@52 a4e77c2c-9104-11de-800e-5b313e0d2bf3
9 files changed