Allow specifying handlers order without using First<T>

I raised issue #1036 to cover this change, where it should be possible to specify ordering without the help of the 'First' class and therefore dynamically order handlers at runtime during startup.

This is my second attempt, this time hopefully I've understood and chose the develop branch as the base branch to send the changes to, albeit still from my master repo this time.