make all boost components optional