fix autoconfig

In array_merge, $post overrides $opts (concerns data directory).
Always merge $post before calling display().
Default value for dbtype which may still be undefined in display().

Fixes several problems related to autoconfig:
- installation.php only showed $AUTOCONFIG data if it was called after
  install() had come back with errors
- if autoconfig.php was set, installation.php showed an editable field
  with the wrong data in it; then, regardless of any changes, the value
  from autoconfig.php was used
- installation.php used undefined indeces (dbtype, dbIsSet,
  directoryIsSet)
Merge pull request #7720 from ideaship/autoconfig_fix

fix autoconfig