Chain Tests

+ ported existing tests against chain over into chain_test.go
+ updated struct fields in chain context to export them
+ updated main.go to use the new chain context