Add the USB (global) effects.
Better message tracking and retrieve usb settings.
Add retrieval of global settings. Start LFO.
Add a .gitignore file.
Add missing effects to modifier array.

Change AMP_POSITION to AMP_A_POSITION.

Add AMP_B_POSITION to the modifier array.

Add AMP_PRESENCE to the modifier array and move it to follow Treble
in the Equalizer effect.

Add EQ_B_POSITION settings to the modifier array.

Change the formatting of the debug messages to print more
readable columns.
Presence effect in wrong place for some devices.
Add labels to debug messages.

Add a global settings settings to the xml settings array.

Start adding label strings to the debug messages. This
needs cleaning up, but it should help.
Refine logging infrastructure.

1) Make logging conditional on debug flags.

2) Add command line option for setting these flags.

3) Emit warnings with g_warning() instead of g_message().

4) Added note about how FX_LIB_LEVEL_MAX[1-3] is used.
Add 'Label' to modifier group log message.
Human readable debug

Leverage the code that writes a preset to XML so that messages
can be displayed in a human readable format.

E.g.,

(6, 2432, 1280)  Distortion: Dist Type: Screamer

The 3-tuple is position, id, value, which is followed by the
colon separated decode of the position, id, and the mapped value.
Fixup label range values.

A number of EffectValues of type label had invalid ranges. Make
them less invalid.

Also add SYNTH_TALK id's to xml settings.

Make format_ipv warn instead of crashing if an xml setting is not
found.
Implement parameter linking to expression pedal.
Implement the LFO1 and LFO2 effects.

For now, this is just for rp355, though the code should work for other
devices with minimal modification.

1) The EffectValues for values_*_assign need to be VALUE_TYPE_POSID.

2) Disabmiguate "Delay Tape" for a couple of EffectSettings. This fixed
   some bugs in the creation of the global modifier group.

3) Remove #if 0's around the definition of the lfo2_settings.

4) Define proper lfo1 and lfo2 groups arrays.

5) Define the lfo2_effect[] array.

6) Add the lfo1 and lfo2 effects to the rp355_effects array.

7) Disambiguate "EQ B" from "Eq" for some effedts in the modifiers array.

8) In push_message(), after we receive the RECEIVE_MODIFIER_LINKABLE_LIST
   message, kick off the creation of the EXP, LFO1, and LFO2 effects.

9) Generalize the function used for the pedal1_assign effect and make it work
   for lfo1 and lfo2 as well. Convert printf's to debug_msg().

10) Since we're destroying the association of the grid with the placeholder
    combo box entry, steal the data so the child widget isn't destroyed.

11) Silence warning on exit about 0 unread messages in queue.
Fix up LFO speed EffectValues.
Fix RHold display for delay repeats.

This involved passing the EffectValue resulting from the resolution of
an VALUE_TYPE_EXTRA to map_xml_value() and some more careful range
checking.

Also, the delay repeats effect needed an xml_label for the special
'repeat forever' value 100, which maps to the string RHold.
Replace deprecated API's gtk_vbox/hbox_new().

The API's gtk_vbox_new() and gtk_hbox_new() are deprecated and result
in compilation warnings. Replace these API's with calls to
gtk_box_new() with GTK_ORIENTATION_VERTICAL and GTK_ORIENTATION_HORIZONTAL,
respectively.
Add support for linkable parameters.

These changes allow gdigi to link parameters to the expression pedal,
LFO1, and LFO2. The changes have been implemented only for RP355, but
should be easily extendible to other devices.

The design is as follows:

The effect group entries for the linkable effects have only a placeholder
entry "None" at startup.

During startup, we send an unsolicited REQUEST_MODIFIER_LINKABLE_LIST. When we
receive RECEIVE_MODIFIER_LINKABLE_LIST in response, we use it to construct the
ModifierLinkableList and update the combo boxes for the Pedal Assign and LFO
effects.

Whenever the selected chorus/fx effect changes, the list of linkable parameters
also changes, so the device will send us a NOTIFY_MODIFIER_GROUP_CHANGED. Again,
we send a REQUEST_MODIFIER_LINKABLE_LIST and use the response to rebuild
ModifierLinkableList. Then we tear down and rebuild the state associated with
the affected combo boxes.

The changes made are as follows:

1) Add settings for pedal1_assign. This is the min/max value returned
   by the pedal.

2) Add separate EffectGroup for both pedal assignment and the LFO's
   for the non-combo box settings.

3) Fix up a few more missing effects in the xml and modifier lists.
   There is additional work to do here, but that will be in future
   commits.

4) Fixed a missing break in the RECEIVE_DEVICE_NOTIFICATION case
   in push_message().

5) When we receive a NOTIFY_MODIFIER_GROUP_CHANGED message, free the exisiting
   modifier group and send a REQUEST_MODIFIER_LINKABLE_LIST so we can
   rebuild it.

6) When we receive a RECEIVE_MODIFIER_LINKABLE_LIST, protect the calls to
   create_modifier_group() with GDK_THREADS_ENTER() so we don't crash
   because of interactions with the event/gui threads.

7) Added a BUG assert to an error leg in get_message_list().

8) Fix memory leak in get_digitech_devices() found by valgrind.

9) Add a function to tear down the state associated with the entries of a
   pedal assign or LFO combo box.

10) Add a function to build up the entries of a pedal assign or LFO combo
    box from the modifier linkable list received from the device.

11) Use gtk_combo_box_text_append_text() throughout.

12) A few whitespace/readability changes and more comments.
Add remaining rp355 effects to modifiers array.

1) A few rp355 effects were missing from the modifiers array.
2) The EH_PHASER effects were missing from the xml_settings array.
3) Added a disambiguating string to the "Unable to map" warning in
   gdigi.c.
Merge branch 'global'

Conflicts:
	.gitignore
	effects.c
	gdigi.c
	gdigi.h
	gdigi_xml.h
	gui.c
	gui.h
	preset.c
	preset_xml.c

effects.c: More effect_values_0_to_* arrays for various effects.
           VALUE_TYPE_POSID for linkable effects.
           Add the rest of the global settings (need to change USB_POSITION
           to GLOBAL_POSITION throughout).
           A few label typos.
           New settings, groups, and effects for linkables.
           Make the display three rows instead of two.
           Add missing modifiers.
           Add missing xml settings.
           Code for handling/updating the global modifier linkable list.

effects.h Add VALUE_TYPE_POSID.

gdigi.c   Tweaks for value formatting.
          Use NOTIFY_MODIFIER_GROUP_CHANGED to drive the update of the combo
          boxes for linkable effects.
          Use RECEIVE_MODIFIER_LINKABLE_LIST to handle the update of the
          combo boxes for linkable effects.

gdigi.h   Minor changes.

gui.c     Deprecate gtk_vbox_new().
          Use simpler API gtk_combo_box_text_append_text().
          Minor reformatting/whitespace changes.
          Code to update combo boxes for linkable effects.
          Code to retrieve global parameters from device at startup.

preset_xml.c
          Some tweaks to map_xml_value() so that it's passed resolved
          EffectValues for settings of type EXTRA.
Enable tone/effects library for rp355.

Implement the recent addition of the tone/effects library for the rp355.

Get rid of USB_POSITION.

Add tone lib A for rp355.

Minor comment changes.

Remove a couple of commented out lines.