bst sometimes modifies source `track` parameters

I ran into this attempting to build the baserock project - it seems that sometimes bst will modify the track parameter of a source.

Using bst track busybox.bst on the following mini-project:

project.conf:

name: baserock

aliases:
  upstream: git://git.baserock.org/delta/

# All the elements go here
element-path: ./elements

elements/busybox.bst:

kind: manual

sources:
- kind: git
  url: upstream:busybox
  track: 1_23_1
  ref: 1ecfe811fe2f70380170ef7d820e8150054e88ca

Results in the following changes:

6,7c6,7
<   track: 1_23_1
<   ref: 1ecfe811fe2f70380170ef7d820e8150054e88ca
---
>   track: 1_2_3_1
>   ref: 1231a93bd05f8999fb25560fae17e7bc1d272a4f

The ref update is expected, but the given branch does not exist, and actually running a build results in a failure since the commit does not exist.

Presumably this happens due to ruamel.yaml attempting to escape something when writing back the element after acquiring a new ref. The bug is probably in that project, but we should look a bit deeper into it before reporting :)