Create calendar analyzer for availabilities

https://trello.com/c/FulwCRAw/26-refactor-availability-and-pickup-methods-with-new-object
The use of `NO_TIME` seems odd to me. Is there a way you could refactor this to be a greater than or less than? Not sure what this specifically means, so don't know if you can get by without the range. If you do need the range, you can use `Time.now` in place of `NO_TIME.from_now`