style: addressed unnecessary blanks.
refactor: reordered the parameters of the constructor.
dev: removed the unnecessary guard clause as checking compiste

delegate.
dev: removed the constructor TestCase(Func<objec>) to prevent

ambiguousness between Action and Func parameters.
dev: introuduced the New method.
dev: removed the constructor `TestCase(Action)` but instead,

introduced the New method.
dev: introduced the method `New(Action, string)`.
dev: introduced the methods `New(Action<object>)` and

`New(Action<object>, string)`.
dev: generated all the overloaded New methods using template file.
refactor: used the New methods instead of the constructors of

TestCase.