build system: add Cargo, adapt Makefile