tracing macro added
replace edoc by specs, add tests, satisfy dialyzer