implement the configuration trait + tests

Implement the Configuration trait + tests