ConnectionStringBuilder and Enum/Delegate cleanup

I've started with the codebase cleanup. As a lot of the code is a bit chaotic due to all the changes done over the past years by various authors, it's best to clean the stuff up a bit, weed out dead code and the like, restructure files, make everything look the same and professional and more predictable, so it's easier to understand when reading the code. 

I've started with the connectionstring builder. I had cleaned up the connection class as well, but that was in v2.2, and as it changed a lot in v3 branch, I'll re-do that one later. 

(all tests pass)
> I didn't know there was a coding style document btw. Looking at the code, it's a mix of various styles so I recon more people didn't know.

Yes. We started this style document some months ago exactly because the code is very mixed and we wanted to fix that. I admit that this is a very hard work and we still didn't have a final version of the style document. It is being written as we decide which style to use.