How does a remote server/stub tell gdb which watchpoint fired? Also, how does gdb know how many breakpoints/watchpoints are available?