added a bunch of incomplete features
included some libs