I tried the overlapping at offset. There are two issues:
1) It only takes an x and y, which means any effects won't be applied when you move on a diagonal.
2) There's no basic 'stop movement' effect - bounce causes random movement off the grid, I tried a few others like 'push out' and moving along the opposite angle but none of them just prevented movement
I'm guessing the solid effect is something that's hard-coded in and only works with the built-in movement behaviors?
Also, thanks for the suggestion, but I went through the tutorials already. The platform school didn't help b/c I don't need any of the platform behavior (the game is top-down). It does seem that maybe the solids behavior is something that's just hard-coded - it would be nice if you could tag something as a physics object and then solid and have the basic collision work right off the bat.
It may just be easier to work on a platform game, at least until I can work out some Python coding.