Add BList

Still need to impl a few methods, but this is a good starting point.
How can they contain both B-1 and B+1 elements? (Is there meant to be a 'between' here?)