Moved each class into dedicated files.