new class syntax
various
added chain test