moved some brush logic into brush object

drawr map shouldn't have to "know" that much about internal workings of
brushes/encapsulation/etc