Implement core implementation and Merchant problem

Signed-off-by: Axel Davy <axel.davy@ens.fr>