Add new Domain project.

This project will contain domain models and abstractions.
Move Concert model to the Domain.
Add two domain services for Concerts.

The Concert details service allows clients to request a single concert by ID.

The Concerts' Season service allows clients to request all concerts in the current season, all concerts in the previous season, and all concerts in an arbitrary season (identified by the start year of the season).
Add DataAccess project for RavenDB.
Skeleton implementation of concert details service

This implementation does nothing at all at the moment, just throws a NotImplementedException.
Add IntegrationTests project for Raven
Add unit test project for Raven concert services.

Add a first unit test as well, to ensure that GetConcert() calls Session.Load().
GetConcert should return the requested concert.
Simple integration test for GetConcert().
Add ConcertDetailsService to ConcertsController.

Update all the existing tests.  No behaviour changes yet.
Port Concert Details action to use the new service.

The action should call IConcertDetailsService.GetConcert().
Port Edit (GET) to use new service.

One test has been removed as a result of this refactoring: the test for retrieving the requested concert from the database has been removed, as this was a full integration test that is now handled by the integration tests for the RavenDB data access layer.
Remove Raven components from List facts.

The List action just returns a View with no model and no logic, so there's no need for this test fixture to be a Raven fixture.
Move DateTimeProvider to Domain assembly.

An infrastructure assembly might be a better place for this sort of thing, but it's not worth creating yet.
Add GetFutureConcerts() operation.

The first test ensures that only concerts in the future are returned.
Only return published concerts.

GetFutureConcerts should not return unpublished concerts.
Return concerts in ascending date order.
Port Index action to Concert Details service.

A few tests were deleted as part of this, as the logic they were covering is now encapsulated in the RavenConcertDetailsService, and tested in the matching integration tests.
Add IConcertsSeasonService to ConcertsController.
Return concerts from the requested season.

GetConcertsInSeason() should return only concerts from the requested season.