improvements for the output configuration store
commit 1: port autotests away from QMetaObject::invokeMethod
, instead directly call the method everywhere and use a struct instead of two vectors for the parameters
commit 2: handle laptop lid closing and add an autotest for it. Effectively this creates a different config for when the lid is closed, with the output disabled by default, which is the same as what KScreen is doing