added simulation with sparse recording for large BMs (low memory consumption), added get_joints_sparse to handle its output and added tests