refactored some hasTile and isFree calls to hopefully reduce some of them