WPF UI Development Best Practices