take the mfu and mrug actual size into account when rebalancing the cache
bugfix: properly check the return value from arc_move() in arc_lookup()

also some cleanings so that now the object is removed from the hashtable only
by arc_move() (which really knows when this should be done)