Fix #1 & Fix #2

#1: Overall design from C# migrated (except validation via attributes)
#2: Added test examples showing static access and abstract class access
to fail fast wrappers