To compile and test the contracts, run
$ make test
Check the tests
for actual usage examples of the contract deployment and call interfaces.
The dusk-abi crate is responsible for contract communication with the VM. As well as implementing panic handlers and the boilerplate neccesary to run a contract in a no_std environment.
For more info have a look at the wiki