Implemented xdebug breakpoint commands and slightly refactored xdebug xml api

Summary: This diff implements the following remote debugging commands:
* breakpoint_get
* breakpoint_list
* breakpoint_remove
* breakpoint_update

The descriptions are self-explanatory, but they are also written above each
implementation.

This diff was intended to implement the xdebug breakpoint commands, but I got
fed up with dealing with the xdebug xml code and so I slightly refactored that
as well. The changes go a long way to making it better, but are definitely not
enough in the long run.

Reviewed By: @ptarjan

Differential Revision: D1512977