Altered how we build the DbParameter

A more object oriented approach which allows a sub class to add
behaviour to the base implementation instead of having to replace it