Adds and implements some methods in Duration.
replace some exception by returning the troncated value.
code review & refacto
add duration tests