start merging bitshifts
add snippets from branch bitshift
add preliminary proof
restructure unfinshed proof