Initial directory structure.
Initial commit.
Setting up test directories for py.test.
Set svn:ignore sasha.cfg on project root directory.
Added md5 attribute to SourceAudio plugin.
Added md5 to Event SQL schema, as init argument.
Fixed small bugs in md5 initialization of Events.
Starting to reimplement core/domain with sqlalchemy in core/sqldomain.
Reshuffling sqldomain subpackage.
Implemented basic relationships in sqldomain.
Implemented _Taxonomy base class.
Fleshing out new domain model.
sqldomain classes now derive from a common _Base.
Completed new sqlalchemy-based bootstrap function.
Added get_session( ) method to SashaConfig.
Added get( ) method to _DomainObject, aliasing session.query(cls).
Plugins now instantiate from new-style domain objects.
Added UniqueConstraints to various tables, removed annotation classes from sqldomain.
Implemented key search on Event class.
Added compact representation to Fingering.
Added query_pitches and query_pitch_classes static methods to Event.
Optimized query_keys staticmethod of Event.
Added Partial to sqldomain/_bootstrap.
Added Partial-related properties to Event (pitches, pitch_names etc.).
Fixed bugs in Event.query_pitches and Event.query_pitch_classes.

You can now say:

    >>> q = Event.query_pitch_classes(with_pcs=['c', 'd'], without_pcs=['af'])
    >>> q = q.join(Instrument).filter(Instrument.name=='Soprano Saxophone')
    >>> q.count( )
    2
Added write_fixture method to _DomainObject for assisting in the automation of persistence-to-disk.