Fixed the bug in the fill array function
Incrementing i once per loop left many data points off because they were skipped. Still a bug in cluster initialization though. Fixing that next and then the migration to the new data structure will be complete.
Added an assign_clusters function
Framework is there. Needs some work. Mainly just need a distance-ish function that accepts two vector<T>s and returns the square of the distance. Will do that next.