Yes. A SmartApp sends requests to HAM Bridge, which then communicates with Indigo via AppleScript. But HAM Bridge does not poll for states of SmartThings devices. So if you want to filter rules in Indigo based on SmartThings states, you would need to create a variable for each device state you want to track, and update it when events come in.
Yes, via endpoints. But Indigo can do this directly as well.
The current license is for one Mac, but I will change this to allow a second Mac as I have numerous requests. But another copy of HAM Bridge is not needed to send commands from other Macs. The whole point of HAM Bridge is to be able to contact it from practically anything. Anything that can send a simple HTTP GET (browser, terminal, automator, android or iOS device, etc.) can send commands to HB, and it then execute scripts on your Mac to control Indigo (or practically any app for that matter). In my setup, HAM Bridge executes very complex scenes with a single command, sending commands directly to my Hue lights, audio/video gear via Global Caché iTachs, and my thermostat, as well as Indigo and SmartThings.
I send commands from shell scripts, AppleScripts, Automator, and Keyboard Maestro macros from my MacBook, and from iRule and Tasker from My Android devices, as well as from SmartThings. Just put HAM Bridge on the same Mac running Indigo and you can contact them from anything on your LAN, as well as from SmartThings when you are away (without having to subscribe to Indigo’s pay tier for remote access).