added some missing signatures, also edited tests to reflect some changes as well as modifying some method behavior