Refactoring DbUp and providers.

Based on #53. Done only changes in providers. 

1. Added methods in DbUp.StandardExtensions for calling scripts from file system in absolute or relative way.

2. Changed logging of exception in UpgradeEngine. Only return exception message, not whole Exception.ToString(). Some fixes regarding logging has been changed also in SqlSciptExecutor.

3. I have created classes IQueryProvider, QueryProviderBase, SqlServerQueryProvider) which contains all SQL statements used in source. Based on my previous experience this can be a life-saver, because you don't need to recheck all source code for SQL statements when something change in databases. All providers extend QueryProviderBase and have their own SQL statements written for some functionality.

4. All providers and their classes are in separate projects. Only exception is MsSql Server, which is still in base library DbUp. I think it would be also useful if classes used for MsSql server is moved to separate project.
This ValidateScript() is intended for validation if currently executing script which was already applied to database matches entry in journaling table. Take for instance this scenario. You have developers which all of them write sql scripts and someone decides to change already executed script on database. And when you release that into production may come to problems. Beside I will need this method for validation of execution for oracle Scipts. 

1. I can write summary but because it currently returns only true I write it to not implemented.
2. I can also do implementation for checking executed scripts on MSSQL database, but this is also major change which will also need major release.