fix Issue 9348 - "tmpl!arg" syntax followed by "!is" or "!in"
correction to 64 bit ABI implementation
rename/complete special section header indices

- according to System V ABI
  http://www.sco.com/developers/gabi/latest/ch4.sheader.html
rename abbreviation for section header index (SHI->SHN)

- matches ELF constants
use extendend section header indices when exceeding SHN_LORESERVE

- overflowing section indices in symbol table are escaped
  (st_shndx field is set to SHN_XINDEX)

- additional .symtab_shndx section contains 32-bit section indices
  (contains zero entries for symbols that have a valid st_shndx value)

- overflowing section count in ELF header (e_shnum) is stored in the
  size field of the first section header (sh_size)

- insert dummy null sections to skip reserved section indices
use -1 as UNKNOWN segment index flag

- increases the maximum size of SegData from 32767 to INT_MAX

- the whole backend uses `int` as segment index
rename smash -> stomp
Merge pull request #1507 from 9rnsr/fix9348

Issue 9348 - "tmpl!arg" syntax followed by "!is" or "!in"
Merge pull request #1549 from WalterBright/b32

correction to 64 bit ABI implementation
Merge pull request #1552 from dawgfoto/fixupStackStomp

rename smash -> stomp
Merge pull request #1540 from dawgfoto/fixSectionOverflow

Fix section overflow
improve copyprop and rmdeadass for structs
Fixes Issue 9398 - Print colon instead of question mark for mismatch of ternary operator types.
fix for optimizer changes
fix for optimizer changes 2
Merge pull request #1555 from AndrejMitrovic/Fix9398

Issue 9398 - Print colon for mismatch of ternary operator types
Merge pull request #1553 from WalterBright/b33

improve copyprop and rmdeadass for structs
fix test case
correction to last fix
Merge pull request #1559 from WalterBright/b34

fix Issue 9320 - optimizer should do copy propagation on structs, too