I think dividing libmirserver into more libraries is just going to make maintenance more difficult. Plus we won't get it right first time and more classes will drift from GPL into LGPL over time. There's no reason to maintain any GPL server code if so much of it needs to be LGPL.
But again, if your "driver interface" is carefully designed to have zero dependencies, then the server library can stay full GPL.
I think dividing libmirserver into more libraries is just going to make maintenance more difficult. Plus we won't get it right first time and more classes will drift from GPL into LGPL over time. There's no reason to maintain any GPL server code if so much of it needs to be LGPL.
But again, if your "driver interface" is carefully designed to have zero dependencies, then the server library can stay full GPL.