added new cached properties
fixed smaller issues
calling cached property instead of function
added related objects and related m2m