tweaked movement
added new functionality