Add BList

Still need to impl a few methods, but this is a good starting point.
k is a generic here right, not something related to b?

(the second clause suggests k = b / 2 but it's not at all obvious to me where this relationship appeared from)