Cleanup roaring integration code

Mainly fix code style, rename variables, clean up some logic
Once the MutableRoaringBitmap is casted to an ImmutableRoaringBitmap, then it cannot be "mutated" unless you cast it back to a MutableRoaringBitmap. That is not something you can do by accident in Java, you would need to include the cast explicitly, and a cast to MutableRoaringBitmap from ImmutableRoaringBitmap would give you a pretty clear indication that someone is trying to change the content.

It goes without saying that a cast, the approach I recommend, is much faster than a copy.

If you must forcefully convert a MutableRoaringBitmap to ImmutableRoaringBitmap and a cast will absolutely not do despite my argument, then you can do this:

        MutableRoaringBitmap r = ...
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        DataOutputStream dos = new DataOutputStream(bos);
        r.serialize(dos);
        dos.close();
        ByteBuffer bb = ByteBuffer.wrap(bos.toByteArray());
        ImmutableRoaringBitmap ir = new ImmutableRoaringBitmap(bb);

Of course, this can be put in some convenience function.

I discourage such code however. It is slow, it creates needless work for the garbage collector, and I think it is unnecessary...

(Naturally, you do not need agree with me, but please consider my arguments.)