Add conditionals in format strings

Idea from #150. Syntax `%{if COND then A [else B] }`. 
I used `expr.c` for parsing. `format_print.c` was modified. It uses `gbuf` now: I think, it is more convenient.
Id's in `COND` can be options. Any unknown id is `false`. Id `stream` checks if `is_http_url( %{filename} )`.
I haven't changed/removed/added default formats yet. 
*filename*, *artist*, *albumartist*, *album*, *title*, *genre*, *comment*, *codec*, *codec_profile*, *media*, *discnumber*, *tracknumber*, *date* (year), *originaldate* (year), *duration* (seconds), *bitrate* - this keys. Should I add them instead of *All keys mentioned above*?
Keys are f.e. `artist=album`.