- Write spec preprocessor, that processes given spec file and expands
  macros. Next we should process the output, look for all BuildRequires:
  lines, and install them, instead of running rpmbuild --nobuild to see
  what's missing, since it chokes when stuff is used in %(...), on missing
  includes and so on. 
  
  get_br.py is close, but doesn't handle:
    %if foo
    BuildRequires: ...
    %endif
  which in fact requires expression parser :<

- implement: 
    <command type='shell' id='...'>shell code</command>
    <command type='upgrade' id='...' /> (run poldek --up; poldek -Q --shcmd 'upgrade -G *')
  First requires command-shell:<builder>, second command-upgrade:<builder>.
  This should be class in requester.py, with kind='command', also look for
  kind checking elsewhere in the code (grep for 'kind.*group')

- make default configs reasonable

- fix make-request.sh to be more user-friendly and configurable

- add possibility of tagging stuff for source builder

- jabber daemon. it should connect to jabber server and login to
  conference room. Next open unix socket, so other scripts can write it,
  and jabber server forwards this to conference room.
  
  Next step for such daemon would be to create second unix socket, where
  scripts log what thay are doing so, we can do things like tail on
  current buildlog.

- add log.debug (log only with special options) to log.py, and use it

- if magic comment found in spec: single-build -- aquire all job-slots

- allow blocking some packages

- fetch src.rpm once for all builders on this account, separate fetching 
  src.rpms, so we can build and fetch at the same time

- unify buildlogs.py and ftp.py, both are file queues

- ability to just copy src.rpm from ftp and make it the base for a request to
  bin builders
