Lightweight and flexible for general purpose use.