#5 - Refactor structure; Add base class with configuration