Tests: Added unit tests for ByteArrayQueue, updated for DecodingService.

- Bug fixes in DecodingService and ByteArrayQueue.
- Added solution file for unit tests.
Tests: Updated multithreaded unit testing for TestDecodingService.

- Bug fixes in DecodingService.
OSX: Updated Loop Details/Segment Details UI, changed concept of segments.

- Segments do not have Start/End position anymore, but are simply
markers instead. This should make it easier for users to understand how
they work. This had an imapct in several views/presenters; also updated
SQL script.
- Added custom table view cell; trying to fix Roboto weird font
placement in table views.
OSX: Fixed several bugs in Segment Details.
OSX: Fixed several bugs in SegmentDetails.

- Fixed bug in FaderView and TrackBarView where the MouseUp event would
be fireed without a MouseDown. This created a problem when a view would
be shown with a track bar underneath; it would change the value without
having a MouseDown event before.
- Fixed other bugs in presenter/controller.
OSX: More bug fixes for Loop Details/Segment Details.

- Fixed more controls with MouseDown requirement for MouseUp.
- Fixed several bugs concerning adding/removing markers while in Segment
Details.
OSX: Added color background for cells that display the marker/segment index.
OSX: Added controls in custom cell for columns displaying indexes.

- Added background + label to custom cell to display the
loop/marker/segment index with a colored background, matching the color
in the wave form display.
- Finally fixed the positioning problems of labels in table view
headers.
OSX: Can now change segment orders (table view drag/drop rows).

- Added delegates for the Segments table view for supporting drag/drop
of rows.
- Added SegmentIndex field to Segments table in database.
- Added ChangeSegmentOrder action to LoopDetailsPresenter; order is now
saved to the database and is restored.
OSX: Added drag/drop from marker to segment. Fixed bugs in segment order update.

- Can now drag a marker to the segments table view to create a segment
automatically from a marker
- Added OnAddSegmentFromMarker action to ILoopDetailsView + presenter
- Fixed several bugs where the segment order would not be updated or
restored correctly from the database
OSX: Now applying the last selected EQ preset on startup.

- The player restores the last selected preset
- Effects window displays the correct selected preset on startup
OSX: PopupButton is now round, new rendering for loop segments in WaveFormControl
OSX: Updated drag/drop behavior for linking an existing segment to a marker.

- Can now drag markers over segments to update them (rather than
inserting a new item). Fixed bugs in drag/drop implementation.
- Added LinkSegmentToMarker to ILoopDetailsView.
- Fixed bugs in LoopDetailsPresenter (i.e. loop is refreshed from the
database before updating its segments (was conflicting changes with
SegmentDetailsPresenter), and more.).
WPF: Fixed wave form scroll view sizing issue with split view. Also fixed build after changes on other platforms.
WPF: Fixed several problems with styling; border around ListView is finally fixed after several hours of work. Fixed problem with several buttons changing color on MouseOver status. Added animations for all buttons and headers. Fixed wheel sensitivity in WaveFormScrollView.
WPF: More work on Loop Details.
WPF: Work on SyncWindow UI. Replaced custom template for ListViewItem.

- SyncWindow UI is now matching the new look on OSX, missing
functionality and a few labels.
- MainWindow: Realigned the toolbar buttons to the left
OSX: Fixed bugs in presenters and services.

- SyncDeviceManagerService: Fixed bug where the discovery service would
not start.
- SyncDiscoveryService: Fixed several bugs where the discovery service
would stop scanning IP addresses.
- LibraryPreferencesPresenter: Fixed bug where the Library Service
enable/disable state would not be saved into configuration (then not
starting the service on startup)
- LoopDetailsPresenter: Fixed bug where the UpdateLoopSegmentOrder
method would block from changing segment positions.
- SegmentDetailsPresenter: Fixed bug where the markers would not be
updated before the segment details (so the Markers combo box would not
have the right value)
WPF: Finished new SyncWindow UI layout.

- Still missing implementation.
WPF: Finished working on SyncWindow.

Still a few minor bugs to fix but it's working now!