Implement Vector interfaces

Yes floor is weird, but unfortunatly block locations are doubles floored.