Updated floor function and added ceil function

@jmcriffey this adds updates the floor function to accept more generic intervals and also adds an equivalent ceil function. Please review the code. Still updating the docs