add specs and make things suck a bit less