Writing your own client is easy! But before you start doing it, please make sure that the lacking functionality cannot be implemented by writing a module.
Just read data from bluetooth (usually represented by a serial port) and interpret it according to the Protocol.
Good client must be extensible and customizable, that is the hardest part.