burnin: Test if attach/detach works properly
burnin: Test if attach/detach works properly

The attach/detach test is merged with the add/remove test. The test is
the following: an extra disk is added in each instance and is given a
random name. Once it has been added successfully, we detach it and check
if the instance operates normally. Then, we pick instances randomly and
attach a detached disk to them, using an algorithm that matches a disk
to an instance based on its disk nodes. Finally, we remove the disk.

Moreover, move the start/stop at the top of the tests, since the
start/stop functionality is erroneously used first by other functions
(e.g. rename) and then tested on its own.

Finally, split the Burner class in subclasses for maintenance reasons
and reduce the maximum number of class attributes from 20 to 19.

Signed-off-by: Alex Pyrgiotis <6383a799dda2258eec8fa26a3ce2ec8a7d552341@grnet.gr>
Signed-off-by: Aaron Karper <99cc1031546340b2b8ced5fe338b5890677a56ca@google.com>
Reviewed-by: Aaron Karper <99cc1031546340b2b8ced5fe338b5890677a56ca@google.com>

bitemyapp/ganeti,andir/ganeti,ganeti/ganeti,leshchevds/ganeti,grnet/snf-ganeti,apyrgio/ganeti,dimara/ganeti,grnet/snf-ganeti,bitemyapp/ganeti,yiannist/ganeti,yiannist/ganeti,mbakke/ganeti,leshchevds/ganeti,mbakke/ganeti,leshchevds/ganeti,andir/ganeti,mbakke/ganeti,yiannist/ganeti,onponomarev/ganeti,apyrgio/ganeti,ganeti/ganeti,ganeti/ganeti,onponomarev/ganeti,andir/ganeti,dimara/ganeti