Refactorings and start of 'virtual devices'
update
update