* nuke ::destroy. use dispose or finalize for objects.
* introduce ::unparanted for items (convenience).
  item usage from outside:
  {
    use (item);
    connect (item, ::unparanted);
    do stuff with item.
    disconnect (item, ::unparanted);
    unuse (item);
  }
  or
  {
    use (item);
    connect (item, ::unparanted);
    do stuff with item.
  }
  upon ::unparanted:
  {
    disconnect (item, ::unparanted);
    unuse (item);
  }
  
* wavechunk:
  if (pos > wchunk->tail.end)                                   /* outside wave boundaries */
    {
      iter->lbound = 0;
      iter->rel_pos = wchunk->n_pad_values;
      iter->ubound = iter->rel_pos + MIN (STATIC_ZERO_SIZE - 2 * wchunk->n_pad_values, pos - wchunk->tail.end);
      if (PRINT_DEBUG_INFO)
        g_print ("PHASE_UNDEF, post-tail %ld %ld %ld\n", iter->lbound, iter->rel_pos, iter->ubound);
      return PHASE_UNDEF (wchunk);
    }
  the "pos - wchunk->tail.end" is wrong for direction=+1, should be checked only for direction=-1 and
  then affect lbound
* wavechunk, fill-block:
  wpos.loop_count = loop_count;
  dnode = gsl_data_cache_ref_node (wchunk->dcache, 0, TRUE);
  s/0/wpos.pos/ or offset
      

NEW:
- get rid of ulongs (for types), make all types strings
- fix fine-tune settings (from gsl)
- _SL functions have to be revisited and thoroughly implemented
- track_step_SL() needs bpm_tick => stamp_tick translation
- fix snet propety changes in sub synth and instrument
- replace gsl_signal_exp2() with gsl_approx_exp2() and audio test result
- check for non-xref object links which should be turned into xrefs
- re-eval balance defines, provide just MAX_BALANCE
- provide proper dB functions in GSL
- implement BSE_PARAM_FORCE_DIRTY (never skip save due to value==default)
- adjust stepping and type for all percentage settings
- get rid of BseSampleValue
- get rid of parasites by means of using data pocket and BseSource.x/y
- alive keeping for waves which are removed, but whose index is in use?
- loading (restore) may only work when not playing (to keep consistency
  and avoid lock contentions during playback)
- during playback the instrument set needs to be fixed on a song  
- BSE_SOURCE_GET_CLASS (source)->remove_input() add GslTrans* so clear_input removes really in batches
- add pre-amplification (0..1) to freeverb for clip prevention
- fix scanner error messages for deferred channel resolution to include the *correct* line number
- fix update_suspension_state() recursion for ordninary cycles
  
OLD:
general:
-	delay class destruction and plugin unloading through timeout handlers
*	eliminate everything that fgrep -i fixme/hack reveals ;)
-	param_changed(): update modified stamp and record undo

Balance
-	replace with 3d room position?
