EvoDev: An Iterative Feature-Driven Framework for End-to-End Software Development with LLM-based Agents