feat: 🎸 refactor the code + change the /rows response
The code is now split into more small files. Also: the rows and features
are no checked so that the response is coherent. The /rows response
format has changed, it returns columns and rows (instead of features and
rows), and the columns and rows are now ensured to be coherent.

BREAKING CHANGE: 🧨 change format of /rows response
feat: 🎸 refactor the code + change the /rows response: The code is now split into more small files. Also: the rows and features
are no checked so that the response is coherent. The /rows response
format has changed, it returns columns and rows (instead of features and
rows), and the columns and rows are now ensured to be coherent.

BREAKING CHANGE: 🧨 change format of /rows response