Please implement a deque data structure in Python using only built-in data structures and methods. Your implementation should allow for insertion and removal of elements from both ends of the deque, and should have a maximum size limit defined at initialization. Consider edge cases and efficiency in your implementation.
This prompt doesn't seem malicious.