forgot to add some dependencies
fully functional prototype and updated spec test