Update to new architecture

If we decide to split it in multiple repos we'll just take the parts already here