text: Title: `xonfig web` overwrites its own config within the same session (colors vs. prompts)
  Body: <!--- Provide a general summary of the issue in the Title above -->
  <!--- If you have a question along the lines of "How do I do this Bash command in xonsh"
  please first look over the Bash to Xonsh translation guide: https://xon.sh/bash_to_xsh.html
  If you don't find an answer there, please do open an issue! -->
  
  ## xonfig
  
  No config file to start with:
  
  ```
  $ xonfig
  +------------------+-----------------+
  | xonsh            | 0.15.1          |
  | Python           | 3.11.8          |
  | PLY              | 3.11            |
  | have readline    | True            |
  | prompt toolkit   | 3.0.40          |
  | shell type       | prompt_toolkit  |
  | history backend  | json            |
  | pygments         | 2.17.2          |
  | on posix         | True            |
  | on linux         | False           |
  | on darwin        | False           |
  | on windows       | False           |
  | on cygwin        | False           |
  | on msys2         | False           |
  | is superuser     | False           |
  | default encoding | utf-8           |
  | xonsh encoding   | utf-8           |
  | encoding errors  | surrogateescape |
  | xontrib          | []              |
  | RC file          | []              |
  +------------------+-----------------+
  ```
  
  ## Expected Behavior
  Running `xonfig web` and clicking through colors and themes should in the end result in a `.xonshrc` that contains all of the choices made, not just the last one.
  
  ## Current Behavior
  `xonfig web` seems to overwrite the entire `.xonshrc` file instead of appending to or otherwise modifying it.
  
  ## Steps to Reproduce
  Start without an `.xonshrc` or other config file:
  ```xsh
  cat .xonshrc
  # cat: .xonshrc: No such file or directory
  ls -a .config/xonsh/
  # .  ..
  ```
  Start `xonfig web`, in it, select a non-default color theme, then click on the "Update $XONSH_COLOR_STYLE" button.
  ```xsh
  cat .xonshrc
  # XONSH WEBCONFIG START
  $XONSH_COLOR_STYLE = 'solarized-dark'
  ```
  Now go to "Prompts", select a non-default one, click "Set". The previously selected color style is now overwritten with the prompt config
  ```xsh
  cat .xonshrc
  # XONSH WEBCONFIG START
  $PROMPT = '[{localtime}] {YELLOW}{env_name} {BOLD_BLUE}{user}@{hostname} {BOLD_GREEN}{cwd} {gitstatus}{RESET}\n> '
  ```
  
  ## For community
  ⬇️  **Please click the 👍 reaction instead of leaving a `+1` or 👍  comment**
  