Complete rewrite of the annotation layer

*Thorough description is coming up...*
see comment above. this will always be the case because you have initialized color with [0,0,0]