make Place fields protected for easy subclassing
don't use primitives - want to preserve null values