Start Refactor: move light -> driver -> connector -> timeout provider -> socket to Roles!
refactor. now start to refactor driver
add refactor