update deps, add specs
improve tests coverage