Use factory method for creating locations