Added Stave Connector X Offest + Repeat Begin Barline Offset Fix

**Minor Fix:**
The repeat begin barline should properly offset in front of the other stave modifiers. In addition, offset `REPEAT_BEGIN` barline types should automatically draw a `SINGLE_LEFT` barline. This is how the code was structured before the bug was introduced.

**Functionality Added:**
The `BOLD_DOUBLE_LEFT` stave connector can now be offset in order to align with `REPEAT_BEGIN` barlines

I extracted a method from `Stave.draw()` called `getRepeatBeginXShift()`, that way you can access the barline offset for the stave at any time.

I added a property called `x_shift` to the `StaveConnector` object which can be set via a new `setXShift()` method.

Combine the two like so: `connector.setXShift(stave.getRepeatBeginXShift())` in order to align the Bold Double barline with the repeat begin position. Currently `x_shift` is only applied to the x position of the `BOLD_DOUBLE_LEFT` connector and no others.

The caveat with this implementation is that the clef glyphs do not have uniform widths, so there is a little overlap weirdness if widths don't match up precisely. I also had to alter the `getNoteStartX` to more properly take give more padding for a `REPEAT_BEGIN` barline.

Stave Connector tests have been expanded. And the current Repeat tests should now be rendering correctly.