Casmo API

Pull request replacing #73 to account for asymmetric assemblies
Yeah... sorry.  :-1: 
Done :+1: