also enable highlight formatting if no position is given

Otherwise the "warning" or "error" string is not highlighted if no position
is set.
improved auto detection of host machine triple
add experimental warning category
reorganize target machine selection/initialisation

Most of the target machine selection/initialisation code has been moved
to target.c. I also cleaned up this code:
- We now use the firm amd64 backend on x86_64 hosts (but display a
  warning advising users to use -m32)
- Fix -m32 switch when a 64bit backend was selected
update libfirm revision
add missing file