Separating interface and implementation of FIB. Right now everything is
kind of broken.
18 files changed