Fix compact function implementation to fix the transition mixin

I made the `lib_compact` function in `compass.inc.php` more like the original Ruby implementation at https://github.com/chriseppstein/compass/blob/stable/lib/compass/sass_extensions/functions/lists.rb#L18.

The function returns a new list after removing any non-true values.

Scss:

    .test1 {
        content: compact(value1, value2, false, value3);
    }

    .test2 {
        content: compact(value1 value2 false value3);
    }

    .test3 {
        content: compact(value1, value2 false, value3);
    }

Resulting CSS:

    .test1 {
      content: value1, value2, value3; }

    .test2 {
      content: value1 value2 value3; }

    .test3 {
      content: value1, value2 false, value3; }

 This fixes leafo/scssphp-compass#3 because the transition mixin uses compact() quite a bit.

This might also be interesting for leafo/scssphp#89.