A statically allocated interval tree backed by a bitmap spanning an interval of size N.
N must be a power of two. Steps are taken to treat incorrect input (rounded to nearest power).
A dynamically allocated interval tree backed by a bitmap spanning an interval of size interval_size.
interval_size must be a power of two. Steps are taken to treat incorrect input (rounded to nearest power).
Returns index for the left child of index.
Unlike parent_for, this method is unchecked. One must track how many nodes are actually in the tree and react accordingly.