overhaul on spec framework
merge conflicts