General fixes:
=============

- mask propagation? (when ligation, "or" the masks).

- Warn at compile time (and runtime with HB_DEBUG?) if no Unicode / font
  funcs found / set.

- Fix TT 'kern' on/off and GPOS interaction (move kerning before GPOS).

- Do proper rounding when scaling from font space?  May be a non-issue.

- Misc features:
  * init/medi/fina/isol for non-cursive scripts
  * vkna,hkna etc for kana, etc

- Add Pango backend?

- Add ICUlayout backend?

- Add ICUlayout API?


API issues to fix before 1.0:
============================

- Add default font_funcs / Unicode funcs API and to utils.

- Add init_func to font_funcs.  Adjust ft.

- Add pkg-config files for glue codes (harfbuzz-glib, etc)

- Figure out how many .so objects, how to link, etc

- 'const' for getter APIs? (use mutable internally)

- blob_from_file?


API additions
=============

- Language to/from script.

- Buffer (de)serialize API ala hb-shape?

- Move feature parsing from util into the library

- Add hb-cairo glue

- Add sanitize API (and a cached version, that saves result on blob user-data)

- Add glib GBoxedType stuff and introspection

- Finish Uniscribe / CoreText face / font get API

- BCP 47 language handling / API (language_matches?)

- Add hb_face_get_glyph_count()?

- Add hb_font_create_linear()?

- Add hb_shape_plan()/hb_shape_planned()

- Add query API for aalt-like features?

- SFNT api? get_num_faces? get_table_tags? (there's something in stash)

- Add segmentation API

- Add hb-fribidi glue?


hb-view / hb-shape enhancements:
===============================

- --output-format should list available formats.
- Add --width, --height, --auto-size, --align, etc?
- Add XML and JSON formats to hb-shape
- --features="init=medi=isol=fina=0"


Tests to write:
==============

- ot-layout enumeration API (needs font)

- Finish test-shape.c, grep for TODO

- Finish test-unicode.c, grep for TODO

- GObject, FreeType, etc

- hb_set_t

- hb_cache_t and relatives
