D3: Documentation Driven Development