Improve testing of executable configurations.
Improve testing of executable configurations.

Previously, running "dub test" for an executable configuration would simply be lowered to "dub -b unittest <config>". This meant that the usual testing logic, including custom test runners and executable name were not applied. With this change, executable configurations are treated much like library ones. The main source file gets removed from the build/test to avoid conflicts with the generated main().

In addition to the functional change, the name of the generated test executable has been changed to "<package>-test-<config>".

Geod24/dub,D-Programming-Language/dub,gedaiu/dub,rjframe/dub,Flamaros/dub,grogancolin/dub