Refactor + Start implementing server