moves almost finished spec over to master
from solution branch