ported gen_ids.php to Lua

Massive performance improvement due to native Id hashing with lbeidlib.
No longer depends on external idgen executable.
Improved output formatting.
If global `list` is not false or nil, a list of all `BEID_` symbols
defined in each file is printed out.
If global `no_update` is not false or nil, files will be read, but not
modified.
If provided, the first parameter is a prefix applied to each file
opened/modified.
If more than 1 parameter is provided, additional parameters specify
files to process, relative to the first argument.  If 1 or no parameters
are provided, all known bengine Id header files are processed.