Add Visual Studio Project

fix unit tests
formatting
add ignores for VS work files