Fixes #1 Added multi-level inheritance support :D