Implement fluid interface in all entities

Currently the fluid interface of entities is inconsistent. This PR fixes this and adds missing phpdocs as well.

(Also fixes a little bug where total shipping weight is not returned properly.)