Add initial implementaiton with routing