add destructor checks for valid gl handles
fix default keyword use
add array move and emplace back
change slot map to use foundation array class