Matched Arduino's HIGH/LOW digital terminology.
Removed most references to volts.

As this project is fast becoming hardware only, let's ignore volts entirely in favour of 12 bit integers in the range of 0 to 4095 for the DACs to use.

So far I've removed all direct references to volts, except for the (unused anywhere) swing input.
Removed volts from swing.

I haven't had a chance to test this yet, so beware.
Added bitwise triggers for drums.

Squashed commit of the following:

commit e811bf08e97906d38148f883b993fb7ec53774a8
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 22:53:30 2012 +0100

    Fixed trigger output related bugs.

commit 3f3bee27e08fa2ef48de4d375a51c25280a82f8c
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 21:59:17 2012 +0100

    Added trigger outputs.

    I haven't had a chance to test these yet, but they should be sound.

commit e8535535ee45c4b059b41e932c75769635cb35a6
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 21:52:18 2012 +0100

    Implemented triggers in pattern loading and saving.

    It works like a charm, first time! :D

commit e9eb940d41357d38bcae0e21f32c42d151e92efe
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 21:42:43 2012 +0100

    Revert "Added temporary diagnostics info to later remove."

    This reverts commit 6e7c12e6c72f7227b7122594ef92e9229680618e.

commit d7e68a674d5d258267121b6d60623bb7c818325c
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 21:42:02 2012 +0100

    That'll teach me to try shortcuts...

commit a5f1933cc9956590e805e1da7f54c4953853f036
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 21:39:53 2012 +0100

    We read numbers backwards, ish...

commit 5b504708e7dc200309adee9335a117d7cd1ffab1
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 21:36:44 2012 +0100

    Fixed powers, somewhat.

    I turns out x^y is a bitwise exclusive or, not a power, so I'm using << instead, which is faster anyway.  The code still isn't working yet.  It looks like the integer is signed.

commit 6e7c12e6c72f7227b7122594ef92e9229680618e
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 21:30:23 2012 +0100

    Added temporary diagnostics info to later remove.

commit b12a3c49dfc80ee008038ed677c0359a5e87dcfe
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 19:23:17 2012 +0100

    Programmed trigger functionality.

    Currently spectacularly not working.  Also no loading or saving yet.

commit 14e63a5a07773fc0a734919bec0a79354de51711
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 19:07:16 2012 +0100

    Resetting the pattern now includes triggers.

commit 77129ddeb1041651a9df676b1ca731d711a543ee
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 19:04:31 2012 +0100

    Made clipboard trigger-aware.

commit af29f4cbf1dc7c3723f7c5f8ca08821f98172099
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 19:00:41 2012 +0100

    Made way for triggers.

    Stepper will be hardwired to have exactly eight of them, even if some are always unused, in order to fill a byte with each row of triggers.

commit 1a72c52fe7b4e5cce3290c729b3d677724db08d4
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 18:51:45 2012 +0100

    Let's not overly complicate things.

    Revert "Renaming channels."

    This reverts commit 764f88b1bd813b0eaf1da586af69aa3b459e466b.

    Conflicts:

    	python/stepper.py

commit 986809f68f78394e8fc729150d2a98b20ca5ff38
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 18:48:32 2012 +0100

    More rearranging of gate/CVs for consistency.

commit d31521b8f906e03ed302b034b0777166013aaf09
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 18:43:19 2012 +0100

    Replaced Vi cursor keys with Spectrum ones.

commit 0b6a837c04e833753a2d049630ec231fbdd41542
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 18:38:33 2012 +0100

    Another minor label amendment.

commit edec5a7cc603fdbfac00306a5452dc9b4d463bb7
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 17:46:59 2012 +0100

    Amended text.

commit f58d4090901d4f20ab83f963186bc93c54a0d7fe
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 17:42:36 2012 +0100

    Rearranging keyboard layout.

    This is in order to accommodate the trigger channels with numbers 1 through to 8.

    I just need to fix H and J being given two different tasks first...

commit aa9777ee14ac6c622c36cf7e58e0b9f9786778d9
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 15:35:14 2012 +0100

    Started work on implementing trigger outputs.

    These can't be in the main pattern array as they don't conform to its dimensions, so I'll likely have to split the pattern array up into a pitchedPattern array and single dimensional, MAX_NUMBER_OF_ROWS long, drumPattern array.

commit 779061ca7095c90ebf0f3a8bc75ca9a68912fd94
Merge: b67bc8c 8dd9195
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 15:21:48 2012 +0100

    Merge branch 'no-volts' into adding-drums

commit b67bc8ca87fd3d033e50a846ed03a42f24927f2e
Merge: 764f88b d2f5b64
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 15:03:04 2012 +0100

    Merge branch 'high-low' into adding-drums

commit 764f88b1bd813b0eaf1da586af69aa3b459e466b
Author: Zoë Blade <zoe@bytenoise.co.uk>
Date:   Wed May 16 14:28:56 2012 +0100

    Renaming channels.

    Renamed NUMBER_OF_CHANNELS to NUMBER_OF_PITCHED_CHANNELS, in anticipation of unpitched/drum channels (a byte storing eight triggers either firing or not for each row, or eight or four channels with a gate-duration-only byte each, to allow both open and closed hi-hats to be triggered from the same channel).
Critical pattern loading related bugfix.

Playing an empty first pattern no longer crashes the application.