Whoops, my bad.
I always thought a 'Tom' was entire.
If it's an adult your after then I don't think breed really comes into it.
Although different breeds do tend to share common traits dogs are wildly individual.
I would visit some rescues with a clear list of what you want and let them provide you with a group of dogs they think would be a good match and see if any appeal.
Some rescues offer a trial period rather than an outright adoption which would be brilliant.
Something I would bear in mind is that dogs in kennels behave hugely differently to dogs in a foster (home) environment.
Quite often that barking loon throwing itself at the mesh is lovely and calm in a settled home environment and a super quiet, shy little soul sat in the corner could transform into a right naughty little shit in a loving family environment.
Kennels are not a good place to accurately gauge temperament as they are very stressful places.
Try and visit foster dogs to get a really good idea of who they are.
For puppies, any puppy taught from day one not to chase or intimidate the cat in any way should be just fine with your cats though you can't guarantee how they might react to strange ones.
I would insist though that good behaviour is needed from both sides I.e don't let the cat whack or hurt the dog for fun/no reason because sooner or later the dog could retaliate.
No such thing as a child friendly breed, you want a nice confident puppy who gets lots of love and treats and play and nice things whenever children are around and you should end up with a child friendly dog.
If you want to do hillwalking and a good hours daily walk then your looking for pretty much any breed except a flat faced like a Pekingese, bulldog etc or a super short legged long backed like a basset or dachshund.