switch to boost shared ptrs