Add gen_str_search_table prototype.
Add shortcut in find_substring to do a char search if length == 1.
Sort and clean up includes. Add missing ones.
Add note about value_type being unchangeable.
Note that short_data_dummy_t is a hack.
Try to reduce code duplication in iterators.

The ::find* functions also need this treatment, but they're harder to
break down due to the differing types of 'from' parameters and the
handful of variations on searches.
Add c?r?offset functions to get an iterator for an index.
Re-arrange some things in find_substring.
Add string_t::insert. This isn't fully tested, FYI.

In addition, all string member functions that do not already return a
value now return a reference to the string they're called from.
Add warning about odd situations with string_t.

Basically, just don't try to do odd things with memory.
Re-order configurations in premake4.lua