Extracted the saga metamodel out

Tests no longer shortcuts

Find by entity name now works

Detecting unique attribute

Cleanup

Better filtering on saga types

Auto adding uniques based on mappings

Using metadata to find saga entity

Adding pipeline step to match messages with sagas

Obsoleting the .Instance prop

WIP

Moved the cleanup of saga headers earlier in the pipe

This avoids calling the cleanup multiple times

Storing clr-type as a property

Stop using the saga clr type property

Moved the detection of start messages to the metadata

Got rid of the saga type to entity conversion

Covering IFindSagas with acpt test

Refactored the finders

Making sure that start messages have a  mapping

Property based finders now works again

Getting tests green

Custom finders now work

Cleaning up unused code

Proper use of the conventions

More cleanup

Namespace adjustment

Fixed the message type to sagas lookup

Removed the brittle unit tests already covered by acpt tests

Including timeout messages as well

Remove unused field

More cleanup

Obsoleted iconfiguer how to find saga

So we can make it internal

Stop using the saga clr type

Made the metamodel internal for now

Until it settles down

Cleanup

Sagas now starts for base class messages

Test and fix for inherited message hitting existing saga

Fixes after rebase

Removing the custom finder api

We'll re add it in the Saga.Setup() method

Adjusted obsoletes

Adding tests for non Guid message prop/field mapped to saga id

Removed the metadata properties for now

Until we have a real use case for them

Updates after code review

Added a CorrelationProperty concept
Merge pull request #2416 from Particular/saga-unique

Metamodel for sagas