Added basic functionality

Still missing shifting function