refactoring: moved out drawer functionality to separate source code file

Signed-off-by: Alexander Skjolden <alex@plastboks.net>