added comments, made the bulk metric structure more generic (and useful)