mvp functionality complete